当前位置:IT认证>计算机二级

问题:

[单选] 下列有关继承和派生的叙述中,正确的是(  )。

如果一个派生类公有继承其基类,则该派生类对象可以访问基类的保护成员。派生类的成员函数可以访问基类的所有成员。基类对象可以赋值给派生类对象。如果派生类没有实现基类的一个纯虚函数,则该派生类是一个抽象类 。

问题:

[单选] 有如下程序: #include<iostream>using namespace std; class Obj{static int i; public: Obj(){i++;}一Obj(){i一一;}static int getVal(){return i;}}; int Obj::i=0: void f(){Obj ob2;cout<<ob2.getVal();}int main(){Obj obl; f(); Obj}ob3=new Obj;cout<<ob3一>getVal(); delete ob3;cout<<Obj::getVal(); return 0; }执行这个程序的输出结果是(  )。

232。231。222。221。

问题:

[单选] 若有以下程序: #include<iostream>usingnamespacestd; classBase{public: Base() {x=0;}intx;}; classDerivedl:virtualpublicBase{public: Derivedl() {x=10;}}; classDerived2:virtua11publicBase{public: Derived2() {x=20;}}; classDerived:publicDerivedl,protectedDerived2{};intmain() {Derivedobj; cout<<obj.x<<endl; return0;}该程序运行后的输出结果是(  )。

20。30。10。0。

问题:

[单选] 有下列程序: #include<stdi0.h>voidmain() {char*a[]={"abcd","ef","gh","ijk");inti; for(i=0;i<4;i++)printf("%C",*a[i]); }程序运行后的输出结果是(  )。

aegi。dfhk。abcd。abcdefghijk。

问题:

[单选] 有以下结构体说明和变量的定义,且指针P指向变量a,指针q指向变量b。则不能把结点b连接到结点a之后的语句是(  )。 structnode{chardata; structnode*next; }a,b,*p=&a,*q=&b;

a.next=q;。P.next=&b;。p->next=&b;。(*p).next=q; 。

问题:

[单选] C++语言类体系中,不能被派生类继承的有(  )。

转换函数。构造函数。虚函数。静态成员函数 。

问题:

[单选] 关于函数中的<返回类型>。下列表述中错误的是(  )。

<返回类型>中有可能包含关键字int。<返回类型>中有可能包含自定义标识符。<返回类型>中衣可能包含字符*。<返回类型>中可能包含[]。

问题:

[单选] 有如下程序: #include<iostream>usingnamespacestd; classXA{inta; public: staticintb; XA(intaa):a(aa){b++;}~XA(){}intget(){returna;}}; intXA::b=0intmain(){ XAd1(1),d2(3); cout<<dl.get()+d2.get()+XA::b<<endl; return0; }运行时的输出结果是(  )。

5。6。7。8。

问题:

[单选] 有如下程序: #include<iostream>usingnamespacestd; classXA{inta; public: staticintb; XA(intaa):a(aa){b++;}~XA(){}intget(){returna;}}; intXA::b=0intmain(){XAdl(1),d2(3); cout<<dl.get{}+d2.get{}+XA::b<<endl; return0; }运行时的输出结果是(  )。

5。6。7。8。

问题:

[单选] 下列有关内联函数的叙述中,正确的是(    )。

内联函数在调用时发生控制转移。内联函数必须通过关键字inline来定义。内联函数是通过编译器来实现的。内联函数函数体的最后一条语句必须是return语句 。