(1)下面对静态数据成员的描述中,正确的是( )。
A)静态数据成员是类的所有对象共享的数据
B)类的每个对象都有自己的静态数据成员
C)类的不同对象有不同的静态数据成员值
D)静态数据成员不能通过类的对象调用
答案:A
(2)如果类A被说明成类B的友元,则( )。
A)类A的成员即类B的成员
B)类B的成员即类A的成员
C)类A的成员函数不得访问类B的成员
D)类B不一定是类A的友元
答案:D
(3)可以用P.a的形式访问派生类对象P的基类成员a,其中a是( )。
A)私有继承的公有成员
B)公有继承的私有成员
C)公有继承的保护成员
D)公有继承的公有成员
答案:D
(4)建立派生类对象时,3种构造函数分别是a(基类的构造函数)、b(成员对象的构造函数)、C(派生类)构造函数),这3种构造函数的调用顺序为( )。
A)abC
B)aCb
C)Cab
D)Cba
答案:A
(5)下面关于虚函数的描述,错误的是( )。
A)在成员函数声明的前面加上virtual修饰,就可把该函数声明为虚函数
B)基类中说明了虚函数后,派生类中对应的函数也必须说明为虚数
C)虚函数可以是另一个类的友元函数,但不能是静态成员函数
D)基类中说明的纯虚函数在其任何派生类中都必须实现
答案:B
(6)下面关于模板的描述,错误的是( )。
A)函数模板和类模板的参数可以是任意的数据类型
B)类模板不能直接使用,必须先实例化为相应的模板类,然后定义了模板类的对象后才能使用
C)函数模板不能直接使用,需要实例化为模板函数后才能使用
D)类模板的成员函数都是模板函数
答案:A
(7)不能作为重载函数的调用的依据是( )。
A)参数个数
B)参数类型
C)函数类型
D)函数名称
答案:D
(8)在c++语言中,数据封装要解决的问题是( )。
A)数据的规范化
B)便于数据转换
C)避免数据丢失
D)防止不同模块之间数据的非法访问
答案:D