C++试卷
第441题
下面叙述错误的是()。
第442题
关于虚函数,以下说法正确的是()。
第443题
下列关于纯虚函数与抽象类的描述中,错误的是()。
第444题
有如下类定义,类MyDERIVED中保护的数据成员和成员函数的个数是()。
class MyBASE
{
int k;
public:
void set(int n){k=n;}
int get()const{return k;}
};
class MyDERIVED:protected MyBASE
{
protected:
int j;
public:
void set(int m,int n){MyBASE::set(m);j=n;}
int get()const{return MyBASE::get()+j;}
};
第445题
下列关于继承的描述中,错误的是()。
第446题
有如下程序,执行上面的程序将输出()。
class YY:public XX
{
public:
~YY()
{
cout<<"YY";
}
void f()const
{
cout<<k;XX::f();
}
};
int main()
{
XX &p=*new YY;
p.f();
delete &p;
return 0;
}
第447题
下列关于虚函数的描述中,正确的是()。
第448题
在下列横线处应添加的语句是()。
class Base{public: void fun(){cout<<"Base::fun"<<endl;}};
class Derived:public Base
{
public:
void fun()
{
//显示调用基类的fun函数
cout<<"Derived::fun"<<endl;
}
};
第449题
若类A和类B的定义如下,则上述定义中非法的表达式是()。
#include<malloc.h>
class A
{
int i,j;
public:
int geti()
{
return i;
}
};
class B:public A
{
int k;
public:
void make()
{
k=i*j;
}
};
第450题
派生类的构造函数的成员初始化列中,不能包含()。
第451题
派生类的对象对它的基类成员中()是可以访问的。
第452题
C++类体系中,不能被派生类继承的有()。
第453题
有如下程序,执行上面的程序将输出()。
#include<iostream>
using namespace std;
class TestClass
{
public:
TestClass(){cout<<"BB";fun();}
void fun(){cout<<"Bf";}
};
class TestClass1:public TestClass
{
public:
TestClass1(){cout<<"DD";}
void fun(){cout<<"Df";}
};
int main(){TestClass1 d;return 0;}
第454题
下列程序中横线处正确的语句是()。
#include<iostream>
using namespace std;
class TestClass
{
public:
void fun(){cout<<" TestClass::fun"<<endl;}
};
class TestClass1:public TestClass
{
void fun()
{
//显示调用基类的函数fun()
cout<<" TestClass1::fun"<<endl;
}
};
第455题
下面关于虚函数的描述中正确的是()。
第456题
有如下程序,执行上面程序的输出是()。
#include<iostream>
using namespace std;
class TestClass1
{
public:
virtual void fun() {cout<<"1";}
};
class TestClass2:public TestClass1
{
public:
TestClass2(){cout<<"2";}
};
class TestClass3:public TestClass2
{
public:
virtual void fun(){TestClass2::fun();cout<<"3";}
};
int main()
{
TestClass1 aa,*p;
TestClass2 bb;
TestClass3 cc;
p=&cc;
p->fun();
return 0;
}
第457题
有如下类声明,在构造函数XB的下列定义中,正确的是()。
class XA{
int x;
public:
XA(int n){x=n;}
};
class XB:public XA{
int y;
public:
XB(int a,int b);
};
第458题
有如下程序,执行后的输出结果是()。
#include<iostream>
using namespace std;
class BASE{
public:
~BASE(){cout<<"BASE";}
};
class DERIVED:public BASE{
public:
~DERIVED(){cout<<"DERIVED";}
};
int main(){DERIVED d;return 0;}
第459题
下列有关类继承的叙述中,错误的是()。
第460题
在下列关键字中,不能用来表示继承方式的是()。