有如下程序: #include<iostream> using namespace std; class XX { protected: int k; public: XX(int n=5):k(n){}; ~XX() { cout<<"XX": } virtual void f()const=0; }; inline void XX::f()const { cout<<k+3; }; class YY:public XX { public: ~YY() { cout<<”YY”; } void f()const { cout<<k-3; XX::f(); } }; int main() { XX &p=*new YY; P.f(); delete &p; return 0: } 执行上面的程序将输出( )。
A.28XX
B.28YYXX
C.33XX
D.33XXYY
第1题:
有如下程序: #include <iostream.h> using namespace std; class Base { protected: int i; public: int j; }; class Derived:public Base { int m; public: int n; }; int main() { Derived d; d.i=0; //[1] d.j=0; //[2] d.m=0; //[3] d.n=0; //[4] return 0; } 其中主函数中有两个赋值语句有错,这两个错误的赋值语句是( )。
A.[1]和 [2]
B.[1]和[3]
C.[2]和[3]
D.[2]和[4]
第2题:
有如下程序: #include <iostream> using namespace std; class x { protected: int a; public: x() { a=1; } }; class x1 : virtual public x { public: x1() { a+=1; cout<<a; } };
A.1
B.123
C.242
D.244
第3题:
第4题:
有如下程序: #include <iostream> using namespace std; class XX { protected: int k; public: XX(int n=5):k(n){} ~XX() { cout<<"XX"; } virtual void f() const=0; }; inline void XX::f()
A.28XX
B.28YYXX
C.-33XX
D.-33XXYY
第5题:
有如下程序: #include <iostream> using namespace std; class Base { protected: int i; public: int j; }; class Derived:public Base {int m; public: int n; }; int main() { Derived d; d.i=0;//[1]d.j=0;//[2]d.m=0;//[3]d.n=0;//[4]return 0; } 其中主函数中有两个赋值语句有错,这两个错误的赋值语句是______ 。
A.[1]和[2]
B.[1]和[3]
C.[2]和[3]
D.[2]和[4)