模拟题一
一、单项选择题(本大题共10 小题,每小题2 分,共20 )在每小题列出的四个选项中只有一个选项
是符合题目要求的,请将其代码填在题后的括号内。错选或未选均无分。
1.C++中,函数原型不能标识( )
A.函数的返回类型    B.函数参数的个数    C.函数参数类型    D.函数的功能
2.C++程序中,对象之间的相互通信通过( )
A.继承实现    B.调用成员函数实现    C.封装实现    D.函数重载实现
3.对于任意一个类,析构函数的个数最多为( )
A.0    B.1    C.2    D.3
4.下面函数模板定义中不正确的是( 
A.template<class Q>
B.template<class Q>
QF(Qx){ QF(Qx){return Q+x; return x+x} }
C.template<class T>
D.template<class T>
TF(Tx){ TF(Tx){return x*x; return x>1;} }
5.友元关系不能(    )
A.继承    B.是类与类的关系
C.是一个类的成员函数与另一个类的关系    D.提高程序的运行效率
6.语句ofstream f(″SALARY.DAT″,ios::appios::binary);的功能是建立流对象f,试图打开文件
SALARY.DAT 并与之连接,并且(    )
A.若文件存在,将文件写指针定位于文件尾;若文件不存在,建立一个新文件
B.若文件存在,将其置为空文件;若文件不存在,打开失败
C.若文件存在,将文件写指针定位于文件首;若文件不存在,建立一个新文件构造函数可以被重载
D.若文件存在,打开失败;若文件不存在,建立一个新文件
7.下面说法正确的是(    )
A.内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方
B.内联函数在编译时是将该函数的目标代码插入每个调用该函数的地方
C.类的内联函数必须在类体内定义
D.类的内联函数必须在类体外通过加关键字inline 定义


1

8.可以用p.a 的形式访问派生类对象p 的基类成员a,其中a ( )
A.私有继承的公有成员    B.公有继承的私有成员
C.公有继承的保护成员    D.公有继承的公有成员
9.在公有派生情况下,有关派生类对象和基类对象的关系,不正确的叙述是( )
A.派生类的对象可以赋给基类的对象
B.派生类的对象可以初始化基类的引用
C.派生类的对象可以直接访问基类中的成员
D.派生类的对象的地址可以赋给指向基类的指针
10.对于类定义
class A{
public:virtual void func1( ){ }
void func2( ){ }
class B:public A{
public:void func1( ){cout<<″class B func 1″<<end1;}
virtual void func2( ){cout<<″class B func 2″<<end1;}
下面正确的叙述是( )
A. A::func2( )B::func1( )都是虚函数
B. A::func2( )B::func1( )都不是虚函数
C. B::func1( )是虚函数,而A::func2( )不是虚函数
D. B::func1( )不是虚函数,而A::func2( )是虚函数
二、填空题(本大题共10 小题,每小题2 分,共20 )不写解答过程,将正确的答案写在每小题的横
线处。错填或不填均无分。
11.定义类的动态对象数组时,系统只能够自动调用该类的_________构造函数对其进行初始化。
12.C++程序设计中,建立继承关系倒挂的树应使用_________继承。
13.表达式cout<<end1 还可表示为_________
14.基类的公有成员在派生类中的访问权限由_________决定。
15.C++支持的两种多态性分别是_________多态性和_________多态性。
16.C++中语句const char * const p=″hello″;所定义的指针p 和它所指的内容都不能被_________