有如下类定义: classAA{ inta: public: AA(intn=0):a(n)() }; classBB:publicAA{ pubilc: BB(intn)____ }; 其中横线处缺失部分是()。
A.:a(n){}
B.:AA(n){}
C.{a(n);}
D.{a=n;}
第1题:
有如下类定义: Class AA{ int a: PubliC: AA(int n=O):a(n){} }; Class BB:publiC AA{ publiC: BB(int n) }; 其中横线处的缺失部分是( )。
A.:a(n){}
B.:AA(n){}
C.{a(n);}
D.{a=n;}
第2题:
有如下程序: #include<iostreanl> using namespaee std; class AA{ public: AA( ){cout<<'1';} }; class BB:public AA{ int k; public: BB( ):k(0){eout<<'2';} BB(int n):k(n){cout<<'3';} }; int main( ){ BB,b(4),c; return 0; } 程序的输出结果是
A.1312
B.132
C.32
D.1412
第3题:
有如下程序: #include<iostream> using namespace std; class AA{ int k; protected: int n; void setK(int k){this一>k=k;} public: void setN(int n){this一>n=n;} }; class BB:public AA{/*类体略*/}; int main } BB X; A n=1;//1 B setN(2);//2 C k=3;//3 D setK(4);//4 return 0; } 在标注号码的四条语句中正确的是( )。
A.1
B.2
C.3
D.4
第4题:
有如下程序:
inClude<iostream>
using namespace std;
class AA
{
public:
viltual void f()
{
cout<<"AA";
}
};
class BB:public AA
{
public:
BB()
{
cout<<"BB";
}
};
class CC:public BB
{
public:
virtual void f()
{
BB::f();
cout<<"CC";
}
};
int main()
{
AA aa,*p;BB bb;CC cc;
p=&cc;
p->f();
return 0;
}
运行后的输出结果【 】。
第5题:
有如下程序:
include<iostream>
usingnamespacestd;
classAA{
public;
AA( ){cOUt<<1;)
};
classBB:publicAA{
intk;
public:
BB( ):k(0){tout<<12;}
BB(intn):k(n)(cout<<3;)
};
intmain( ){
BBb(4),c;
return0;
}
运行时的输出结果是( ).
A.1312
B.132
C.32
D.1412
A。【解析】当基类的构造函数默认或无参时,派生类可省略对基类构造函数的显示调用,但系统会自动调用该类的缺省构造函数,且先调用基类的构造函数后调用派生类的构造函数。