1、假设A为抽象类,下列声明()是正确的。
A.A fun(int)
B.A *p
C.int fun(A)
D.A obj
本题答案:
B
2、定义类模板时要使用关键字()。
A.const
B.new
C.delete
D.template
本题答案:
D
3、类的构造函数被自动调用执行的情况是在定义该类的()。
A.成员函数时
B.数据成员时
C.对象时
D.友元函数时
本题答案:
C
4、使用派生类的主要原因是()。
A.提高代码的可重用性
B.提高程序的运行效率
C.加强类的封装性
D.实现数据的隐藏
本题答案:
A
5、运算符重载函数必须以特殊的关键字()开始。
A.virtual
B.operator
C.template
D.static
本题答案:
B
6、构造函数是一种特殊的成员函数,显式定义时其访问属性应被定义为()。
A.public
B.private
C.protected
D.static
本题答案:
A
7、在定义派生类时,若无继承方式说明,则默认的继承方式为()。
A.私有继承
B.公有继承
C.保护继承
D.虚拟继承
本题答案:
A
8、C++流类库预定义的与标准输出设备相关联的是()。
A.cin
B.cout
C.cerr
D.clog
本题答案:
B
9、类的析构函数是在()被调用的。
A.类创建时
B.创建对象时
C.删除对象时
D.不自动调用
本题答案:
C
10、cout是I/O流库中预定义的()。
A.类
B.对象
C.文件
D.常量
本题答案:
B
11、要将类A说明是类B的虚基类,正确的描述是()。
A.class virtual public A
B.class virtual public A
C.virtual class public A
D.class public A virtual
本题答案:
B
12、在下列关键字中,用于说明类中公有成员的是()。
A.public
B.private
C.protected
D.friend
本题答案:
A
13、类中定义的成员默认为()访问属性。
A.public
B.private
C.protected
D.friend
本题答案:
B
14、get()函数的功能是从输入流中读取()。
A.一个字符
B.当前字符
C.一行字符
D.指定若干个字符
本题答案:
A
15、通常拷贝构造函数的参数是()。
A.某个对象名
B.某个对象的成员名
C.某个对象的引用名
D.某个对象的指针名
本题答案:
C
16、打开一个文件,就是将这个文件与一个()建立关联。
A.类
B.流
C.对象
D.设备
本题答案:
B
17、下列描述中错误的是()。
A.派生类至少有一个基类
B.派生类可作为另一个类的基类
C.派生类所继承的基类成员的访问权限保持不变
D.派生类除了包含它直接定义的成员外,还包含基类的成员
本题答案:
C
18、设有函数模板template Q Sum(Qx,Qy){return(x)+(y);} 则下列语句中对该函数模板错误的使用是()。
A.Sum(10,2)
B.Sum(5.0,6.7)
C.Sum(15.2f,16.0f)
D.Sum(“AB”,“CD”)
本题答案:
D
19、语句ofstream f(“SALARY.DAT”,iosz∷app|ios∷binary); 的功能是建立流对象f,试图打开文件SALARY.DAT并与之连接,并且()。
A.若文件存在,将文件写指针定位于文件尾; 若文件不存在,建立一个新文件
B.若文件存在,将其置为空文件; 若文件不存在,打开失败
C.若文件存在,将文件写指针定位于文件首; 若文件不存在,建立一个新文件
D.若文件存在,打开失败; 若文件不存在,建立一个新文件
本题答案:
A
20、在磁盘文件操作中,以追加方式打开磁盘文件时,其mode值为()。
A.in
B.app
C.out
D.ate
本题答案:
B
21、如果一个类只定义了一个带参的构造函数,则系统会给它提供缺省的无参构造函数。()
A.错误
B.正确
本题答案:
A
22、数组中的每个元素它们的类型可以是不同的。()
A.错误
B.正确
本题答案:
A
23、类A继承类B,则A称为B的派生类,B称为A的基类。()
A.错误
B.正确
本题答案:
B
24、类是一组对象的抽象,而对象则是类的一个实例。()
A.错误
B.正确
本题答案:
B
25、C++与C语言本质差别在于C++语言是面向对象的,而C语言是面向过程的。()
A.错误
B.正确
本题答案:
B
26、ofstream是用于写文件的文件流。()
A.错误
B.正确
27、指针和引用都是变量,都占有单独的内存空间。()
A.错误
B.正确
28、为了在派生类中使用基类的同名成员,必须在该成员名之前加上基类名和作用域标识符。()
A.错误
B.正确
29、C++编译器能够区分重载的无参函数和缺省参数的函数。()
A.错误
B.正确
30、不能在类声明中给数据成员赋初值。()
A.错误
B.正确
31、文件流创建方式是打开二进制文件的是ios∷binary。()
A.错误
B.正确
32、this指针是一个const指针,不能在程序中修改它或给它赋值。()
A.错误
B.正确
33、成员函数体写在类外部的一定不是内联函数,写在类内部的一定是内联函数。()
A.错误
B.正确
34、构造函数和析构函数都不能带参数。()
A.错误
B.正确
35、多态性是指不同的对象收到相同的消息时产生多种不同的行为方式。()
A.错误
B.正确
36、使用重载运算符既可以用运算符的方式又可以用函数调用的方式。()
A.错误
B.正确
37、类成员是按照它们在成员初始化表中列出的顺序进行初始化的,与它们在类里被声明的顺序无关。()
A.错误
B.正确
38、当一个类被说明为另一个类的友元时,它的所有的成员函数都成为另一个类的友元函数。()
A.错误
B.正确
39、构造函数和析构函数都不可以由程序员调用,只能由系统自动调用。()
A.错误
B.正确
40、若有声明:class C:public A,B{}; 则类C公有继承自类A、私有继承自类B。()
A.错误
B.正确