更多"有如下函数模板的定义: template<class T> T f"的相关试题:
[单项选择]有如下函数模板的定义:
template<class T>
T func(T x,T y)return x*x+y*y;
在下列对func的调用中不正确的是
A. func(3,5);
B. func<>(3,5);
C. func(3,5.5);
D. func<int>(3,5.5);
[单项选择]有如下函数模板定义:
template <class T>
T func(T x,T y) return x*x+y*y;)
在下列对func的调用中,错误的是( )。
A. func(3,5);
B. func(3.0,5.5);
C. func(3,5.5);
D. func<int>(3,5.5);
[单项选择]有如下函数模板的定义:
template <class T>
T func(Tx,Ty) return x*x+y*y;
A. func(3,5);
B. func<>(3,5);
C. func(3,5.5);
D. func<int> (3,5.5);
[单项选择]假设有函数模板定义如下,下列各选项中正确的是( )。
Template <class T>
T Max(T a,T b,T c)
if(a<b)
if(b<c)
return c;
else
return b;
else if(a<c)
return c;
else
return a;
A. float x,y,z;float max;max=Max(x,y,z);
B. float x;int y,z;float max;max=Max(x,y,z);
C. float x;double y,z;float max;max=Max(x,y,z);
D. 三个选项都正确
[单项选择]有如下函数模板定义:
template<typename T1,typename T2,typename T3>
T2 plus T1 t1,T3 t3)return t1+t3;
则以下调用中正确是
A. plus(3,5L);
B. plus<>(3,5L);
C. plus<int>(3,5L);
D. plus<int,double>(3,5L);
[单项选择]有如下函数模板定义:
template<typename T1, typename T2>
T1 FUN(T2 n) return n*5.0;
若要求以int型数据9作为函数实参调用该模板,并返回一个double型数据,则该调用应表示为( )。
A. FUN(9)
B. FUN<9>
C. FUN<double>(9)
D. FUN<9>(double)
[单项选择]有如下函数模板定义:
template <typename T1,int a2,int a3>
T1 sum(T1 a1)
return (a1+a2+a3);
则以下调用中正确的是( )。
A. sum <int,4,3>(5);
B. sum <4,3>(5);
C. sum <int,int,int>(5);
D. sum(5);
[单项选择]有如下函数模板定义:
template<typename T1,int a2,int a3>
T1 sum(T1 a1)
return(a1+a2+a3);
则以下调用中正确的是( )。
A. sum<int,4,3>(5);
B. sum<4,3>(5);
C. sum<int,int,int>(5);
D. sum(5);
[单项选择]有如下函数模板定义:
template
T1 sum(T1 a1)
return(a1+a2+a3);
则以下调用中正确的是( )。
A. sum<int,4,3>(5);
B. sum<4,3>(5);
C. sum<int,int,int>(5);
D. sum(5);
[单项选择]有如下函数模板:
template <class T>T square(T x)return x*x;
其中T是( )。
A. 函数形参
B. 函数实参
C. 模板形参
D. 模板实参
[单项选择]有如下类模板定义:
template<typename T>
class BigNumbei
long n;
public;
BigNumber(T i):n(i)
BigNumber operator+(BigNumber b)
return:BigNumber(n+b.n);
;
已知b1、b2是BigNumber的两个对象,则下列表达中错误的是( )。
A. b1+b2
B. b1+3
C. 3+b1
D. 3+3
[单项选择]有如下类模板定义:
template <typename T>
class BigNumber
longn;
public:
BigNumber(T i):n(i)
BigNumber operator +(BigNumber b)
return BigNumber(n+b.n);
;
已知b1、b2是BigNumber的两个对象, 则下列表达式中错误的是
A. b1+b2
B. b1+3
C. 3+b1
D. 3+3
[填空题]有如下的类模板定义:
template<typename TYPE>
class MyClass
TYPE n;
public:
MyClass(TYPE k);
;
其中构造函数MyClass用的值初始化数据成员n。因此在模板类体外,构造函数MyClass应定义_____。
[填空题]有如下的类模板定义:
template<typename TYPE>
class MyClass {
TYPE n;
public:
MyClass(TYPE k);
};
其中构造函数MyClass用的值初始化数据成员n。因此在模板类体外,构造函数MyClass应定义_____。
[单项选择]下面的函数模板定义中错误的是( )。
A. template <class Q>
B. template <class Q>
C. template<class T>
D. template <class T>