《C++程序设计》谁能帮我一下

来源:百度知道 编辑:UC知道 时间:2024/06/17 00:41:37
一、单项选择题(每小题3分,共10小题30分)。
1.若A是类名,则下列定义中,定义指向对象数组的指针p的是:
A) A *p[3]; B) A (*p)[3]; C) (A *)p[3]; D) A *p[];
2.若A是类名,则下列关于动态二维对象数组的处理方法中不正确是:
A) A (*p)[3]=new A[2][3];
B) int m=2,n=3; A (*p)[n]=new A[m][n];
C) int m=2; const int n=3; A (*p)[n]=new A[m][n];
D) int m; const int n=3; cin>>m; A (*p)[n]=new A[m][n];
3.当使用类模板时,实际上是将类模板实例化成一个具体的:
A) 模板函数。B) 对象。C) 类。D) 模板类。
4.下列关于运算符重载规则的描述中,理解不正确的是:
A) 可以对已有的所有运算符进行重载,也可以自定义新的运算符。
B) 不能改变运算符运算对象的个数,也不能改变运算符的优先级和结合性。
C) 可以是类成员函数,也可以是类友元函数。
D) 运算符参数至少应有一个是类对象或其引用,不能都是基本类型。
5.下列关于构造一个派生类的描述中,理解不正确的是:
A) 派生类全盘接收基类的所有成员,包括构造函数和析构函数。
B) 派生类通过声明继承方式,调整基类成员的访问控制属性。
C) 派生类可以对基类成员进行重新定义,同名覆盖基类成员。
D) 派生类可以添加不同于基类的新的数据成员和成员函数。
6.在派生类的构造函数的成员初始化列表中,不能包含的是:
A) 派生类的基类的构造函数。
B) 派生类中子对象的初始化。
C) 派生类的基类中子对象的初始化。
D) 派生类中一般数据成员的初始化。
7.下列关于动态联编的多态性的描述中,理解不正确的是:
A) 动态联编的多态性是以虚函数和公有继承为基础的。
B) 运行时根据基类对象指

1 c (a错 因为 它定义的是2位数组)
2 d (b是对的 ,因为 他与第一个定义一样,d在 运行时才构成数组空间大小,这个不对)
3 c
4 c
5 a (原因同上)
6 a (原因同上)
7 d (原因同上)
8 c (原因同上)
9 d (原因同上)
10 d

你的问题有些难度,我不能保证以下的答案都是正确的:
1.A
2.B(不过实在没见这种形式:A (*p)[3];)
3.C
4.C是正确的
5.A(派生类不能使用基类的私有成员)
6.A(基类的构造函数在子类构造函数执行之前已经被执行了)
7.D(抽象基类不能创建对象实例,但可有引用指针)
8.C(重载函数不一定非要是类成员函数)
9.D(选择法也可以用于数组,但相比之下,其它三个更好)
10.D