题目内容

有如下定义:class BASE{public: void fun1(){}private: void fun2(){}protected: void fun3(){}};class DERIVED :protected BASE {public: void fun4(){}};若obj是类DERIVED的对象,则下列语句中不违反访问控制权限的是()。

A. obj.fun1();
B. obj.fun2();
C. obj.fun3();
D. obj.fun4();

查看答案
更多问题

有如下程序:#includeusing namespace std;class C1{public:~C1(){ cout<<1; }};class C2: public c1{public:~C2(){ cout<<2; }};int main(){C2 cb2;C1 *cb1;return 0;}运行时的输出结果是()。

A. 121
B. 21
C. 211
D. 12

有如下程序:#include using namespace std;class Part{public:Part(int x=0):val(x){cout<

A. 123321
B. 213312
C. 21312
D. 12321

虚函数支持多态调用,一个基类的指针可以指向派生类的对象,而且通过这样的指针调用虚函数时,被调用的是指针所指的实际对象的虚函数,而非虚函数不支持多态调用。有如下程序:#includeusing namespace std;class Base{public:virtual void f(){cout<<"f0+";}void g() {cout<<"g0+";}};class Derived:public Base{public:void f() {cout<<"f+";}void g() {cout<<"g+";}};int main(){Derived d;Base*p=&d;p->f(); p->g();return 0;}运行时输出的结果是()。

A. f+g+
B. f0+g+
C. f+g0+
D. f0+g0+

有如下程序#includeusing namespace std;class Publication{ //出版物类char name[30];public:Publication(char *name="未知名称"){strcpy(this->name,name);}const char * getName()const{ return name; }virtual const char * getType()const{ return "未知类型";}};class Book: public Publication{ //书类public:Book(char *name): Publication(name){}virtual const char * getType()const{ return "书";}};void showPublication( Publication &p){cout<

A. 未知类型:未知名称
B. 未知类型:精彩人生
C. 书:未知名称
D. 书:精彩人生

答案查题题库