15.下面的哪个选项不能作为函数的返回类型?( )
A.void
B.int
C.new
D.long
【参考答案】C
16.下列程序的输出结果为( )
#include
intfunc(intn)
{if(n<1)return1;
elsereturnn+func(n-1);
return0;}
voidmain( )
{cout<
A.0
B.10
C.15
D.16
【参考答案】D
17.以下程序中,错误的行为( )
1.#include
2.classA
3.{
4.public:
5.intn=2;
6.A(intval){cout<
7.~A( ){}
8.{;
9.voidmain( )
10{
11.Aa(0);
12.}
A.5
B.6
C.7
D.11
【参考答案】A
18.下面程序的运行结果为( )
#include
classA
{
intnum;
public:
A(inti){num=i;}
A(A&a){num=a.num++;}
voidprint( ){cout<
};
voidmain( )
{
Aa(1),b(a);
a.print( );
B.print( );
}
A.11
B.12
C.21
D.22
【参考答案】C
19.如果类A被说明成类B的友元,则( )
A.类A的成员即类B的成员
B.类B的成员即类A的成员
C.类A的成员函数不得访问类B的成员
D.类B不一定是类A的友元
【参考答案】D
20.建立派生类对象时,3种构造函数分别是a(基类的构造函数)、b(成员对象的构造函数)、c(派生类的构造函数)这3种构造函数的调用顺序为( )
A.abc
B.acb
C.cab
D.cba
【参考答案】A
21.下面关于模板的描述,错误的是( )
A.函数模板和类模板的参数可以是任意的数据类型
B.类模板不能直接使用,必须先实例化为相应的模板类,然后定义了模板类的对象后才能使用
C.函数模板不能直接使用,需要实例化为模板函数后才使用
D.类模板的成员函数都是模板函数
【参考答案】A