niusouti.com

下面是一个模板声明的开始部分: template<typename T>double…由此可知( )。A.这可能是一个函数模板的声明B.这可能是一个类模板的声明C.这既可能是一个函数模板的声明,也可能是一个类模板的声明D.这肯定是一个错误的模板声明

题目

下面是一个模板声明的开始部分: template<typename T>double…由此可知( )。

A.这可能是一个函数模板的声明

B.这可能是一个类模板的声明

C.这既可能是一个函数模板的声明,也可能是一个类模板的声明

D.这肯定是一个错误的模板声明


相似考题
更多“下面是一个模板声明的开始部分: template&lt;typename T&gt;double…由此可知( )。 A.这可能是一 ”相关问题
  • 第1题:

    下面是一个模板声明的开始部分:templatedouble…由此可知A.这可能是一个函数模板的声

    下面是一个模板声明的开始部分: template<typename T>double… 由此可知

    A.这可能是一个函数模板的声明

    B.这可能是一个类模板的声明

    C.这既可能是一个函数模板的声明,也可能是一个类模板的声明

    D.这肯定是一个错误的模板声明


    正确答案:A
    解析:函数模板声明的格式:
      templatetypename类型参数>返回类型函数名(模板形参表){函数体}
      类模板的声明格式:
      templatetypename类型参数>class类名{类成员声明}故答案为A。

  • 第2题:

    下面是一个模板声明的开始部分: Templatedouble... 由此可知A.这可能是一个函

    下面是一个模板声明的开始部分: Template<typename T>double... 由此可知

    A.这可能是一个函数模板的声明

    B.这可能是一个类模板的声明

    C.这既可能是一个函数模板的声明,也可能是一个类模板的声明

    D.这肯定是一个错误的模板声明


    正确答案:A
    解析:类模板说明的一般形式是:
      template类型形参表>
      class类名>
      {//类说明体??
      };
      函数模板的一般说明形式如下
      template模板形参表>
      返回值类型>函数名>(模板函数形参表)
      //函数定义体

  • 第3题:

    下面是一个模板声明的开始部分: templatedouble…由此可知( )。

    A.这可能是一个函数模板的声明

    B.这可能是一个类模板的声明

    C.这既可能是一个函数模板的声明,也可能是一个类模板的声明

    D.这肯定是一个错误的模板声明


    正确答案:A
    本题考查函数模板和类模板的基础知识,从templatedouble这里就可以看出这是·个函数模板的声明。

  • 第4题:

    关于关键字class和typename,下列表述中正确的是( )。

    A.程序中的typename都可以替换为class

    B.程序中的class都可以替换为typename

    C.在模板形参表中只能用typename来声明参数的类型

    D.在模板形参表中只能用class或typename来声明参数的类型


    正确答案:A
    解析:在模板中,定义模板类型templateclassT>和templatetypenameT>都是一样的,有时用class容易引起混淆,所以在标准化时引入了关键字typename。

  • 第5题:

    下列关于模板的叙述中,错误的是

    A.调用模板函数时,在一定条件下可以省略模板实参

    B.可以用int、double这样的类型修饰符来声明模板参数

    C.模板声明中的关键字class都可以用关键字typename替代

    D.模板的形参表中可以有多个参数


    正确答案:C
    解析:在有typename的地方可以用class来代替,但是在有class的地方不一定能用typename代替,如:
      Templaeclass类型参数>class类名{ }后面的那个class是不能用typename代替的。