执行下面程序输出的是【 】。
include <iostream>
using namespace std;
template <typename T>
T total(T *data){
Ts=0;
while( *data) s+=*data++;
return s;
}
int main(){
int s[]={1,3,5,7,0,2,4,6,8};
cout<<total(s);
return 0;
}
第1题:
有如下程序: #include <iostream> void fun(int& x, int y){int t=x;x=y;y=t;} int main () { int a[2]={23,42}; fun(a[1],a[0]); std::cout<<a[0]<<","<<a[1]<<std::endl; return 0; } 执行后的输出结果是
A.42,42
B.23,23
C.23,42
D.42,23
第2题:
以下程序的执行结果是( )。 #include<iostream.h> template<class T> class Sample { T n; Public: Sample (T i){n=i;) void operator ++(); void disp() {cout<<"n="<<n<<endl;} }; template<class T> void Sample<T>:: opetat
A.n=a
B.a=O
C.n=b
D.a=b
第3题:
以下类模板成员函数定义正确的是:
A.template<class T> auto MyClass::foo(){ std::cout << "Aloha World!"<<std::endl; }#B.template<class T> auto MyClass<T>::foo(T t){ std::cout << t << std::endl; }#C.void MyClass<T>::foo(T t){ std::cout << t << std::endl; }#D.template<class T, int S> S MyClass<T, S>::foo(T t, S s){ s = static_cast<S>(t); std::cout << s << std::endl; retu第4题:
如下程序的输出结果是 #include<iostream> void fun(int & X,inty){intt=x;x=y;y=t;} int main( ){ int a[2]={23,42}; fun(a[1],a[0]); std::cout<<a[0]<<","<<a[1]<<std::endl; return 0; }
A.42,42
B.23,23
C.23,42
D.42,23
第5题:
下面程序的输出结果是( )。 #include<iostream> using namespace std; template<class T> T max(T x,T y) { return(x>= y ? x:y);} template<class T> T max(T x,T y,T z) { T t; t=(x>=y ? x:y); return(t>=z ? t:z); } void main(){ int x = 10,y=18,maxi; float a = 1.2,b = 3.2,c = 2,max2; max1 = max(x,(int)c); max2 = max(a,b,(float)y); cout<<maxi<<endl; cout<<max2<<endl;
A.18 3.2
B.10 18
C.10 3.2
D.编译出错