c++
C++是一门强大的面向对象编程语言,由C语言发展而来,”++“意为更进一步发展,C++充分吸收了C语言的优点,同时汲取了面向对象的编程思想,其后拥有STL库的强大支撑,具有封装、继承、多态三大特性,常以高效能著称。
-
在下列关键字中,不能用来表示继承方式的是()。
-
下列有关类继承的叙述中,错误的是()。
-
有如下程序,执行后的输出结果是()。#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;}
-
有如下类声明,在构造函数XB的下列定义中,正确的是()。class XA{ int x;public: XA(int n){x=n;}};class XB:public XA{ int y;public: XB(int a,int b);};
-
有如下程序,执行上面程序的输出是()。#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; }
-
下面关于虚函数的描述中正确的是()。
-
下列程序中横线处正确的语句是()。#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; } };
-
有如下程序,执行上面的程序将输出()。#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;}
-
C++类体系中,不能被派生类继承的有()。
-
派生类的对象对它的基类成员中()是可以访问的。
-
派生类的构造函数的成员初始化列中,不能包含()。
-
若类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; } };
-
在下列横线处应添加的语句是()。class Base{public: void fun(){cout<<"Base::fun"<<endl;}}; class Derived:public Base { public: void fun() { //显示调用基类的fun函数 cout<<"Derived::fun"<<endl; } };
-
下列关于虚函数的描述中,正确的是()。
-
有如下程序,执行上面的程序将输出()。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; }
-
下列关于继承的描述中,错误的是()。
-
有如下类定义,类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;} };
-
下列关于纯虚函数与抽象类的描述中,错误的是()。
-
关于虚函数,以下说法正确的是()。
-
下面叙述错误的是()。