有如下程序:includeusing namespace std;class TlestClass{int n;public:TestClass(i有如下程序: #include<iostream> using namespace std; class TlestClass { int n; public: TestClass(int k):n(k){} int get(){return n;} int get()const{return n+1;} }; int main() { TestClass p

题目
有如下程序:includeusing namespace std;class TlestClass{int n;public:TestClass(i

有如下程序: #include<iostream> using namespace std; class TlestClass { int n; public: TestClass(int k):n(k){} int get(){return n;} int get()const{return n+1;} }; int main() { TestClass p(5); colast TestClass q(6); cout<<p.get()<<q.get(); return 0; } 执行后的输出结果是( )。

A.55

B.57

C.75

D.77


相似考题
更多“有如下程序:#include<iostream>using namespace std;class TlestClass{int n;public:TestClass(i ”相关问题
  • 第1题:

    有如下程序:includeusing namespace std;class TestClass{private;char c;public;Tes

    有如下程序: #include<iostream> using namespace std; class TestClass { private; char c; public; TestClass (char n):c(n){} ~TestClass () { cout<<c; } }; class TestClass1:public TestClass { Private: char c; public: TestClass1(char n):TestClass (n+1),c(n){} ~TestClass1() { cout<<c; } }; int main() { TestClass1 obj('x'); return 0; } 执行上面的程序输出( )。

    A.xy

    B.yx

    C.x

    D.y


    正确答案:A
    解析:题目中程序TestClass为基类,TestClass1为派生类。在主函数中定义TestClass1对象obj('x'),“TestClass1(charn):TestClass(n+1),c(n){}”,所以先输出x,然后调用基类构造函数,'x'+1='y',所以输出y,即答案为xy。

  • 第2题:

    有下列程序:includeusing namespace std;c1ass TestClass{private;char c;public:Tes

    有下列程序: #include<iostream> using namespace std; c1ass TestClass { private; char c; public: TestClass(char n):c(n){} ~TeStClass() { cout<<c } }; class TestClass1:public TestClass {

    A.xy

    B.yx

    C.x

    D.y


    正确答案:A
    解析: 题目中程序TestClass为基类,TestClass1为派生类。在主函数中定义TestClass1对象obj('x'),“TestClass1(char n):TestClass(n+1),c(n){}”,所以先输出x,然后调用基类构造函数,′x′+=′y′,所以输出y,即答案为xy。

  • 第3题:

    有如下程序: include using namespace std; class TestClass { int a

    有如下程序: #include<iostream> using namespace std; class TestClass { int a; public: TestClass(int x){a=x;} void show(){cout<<a;} }; class TestClass1:public TestClass { int b; public: TestClass1(int i):TestClass(i+1),b(i){} void show(){cout<<b;} }; int main() { TestClass b(5),*p; TestClass1 d(1); p=&d; p->show(); return 0; } 该程序运行后的打印结果是( )。

    A.5

    B.1

    C.0

    D.2


    正确答案:D
    解析:TestClass为TestClass1的基类,在主函数main中定义TestClass对象b,*p。TestClass1对象d,P指向d,调用其show函数。“TestClass1(inti):TestClass(i+1),b(i){}”语句中的TestClass基类参数为2,所以show输出2。

  • 第4题:

    有如下程序:includeincludeusing namespace std;class TestClass{public;T

    有如下程序: #include<iostream> #include<iomanip> using namespace std; class TestClass{ public; TestClass (){cout<<'A';} TestClass(char C){cout<<c;) ~TestClass (){cout<<'B';} }; int main(){ TestClass p1,*p2; p2=new TestClass('X'); delete p2; return 0; } 执行这个程序的结果是( )。

    A.ABX

    B.ABXB

    C.AXBB

    D.AXB


    正确答案:C
    解析:在定义对象p1时由系统自动调用构造函数TestClass(),输出字母A;用new创建单个对象TestClass('X')时,要根据参数调用相应的构造函数TestClass(char C),输出字母X;在执行delete时,系统会自动调用析构函数~TestClass(),输出字母B,当对象的生存周期即将结束时系统会自动调用析构函数~TestClass(),输出字母B。

  • 第5题:

    有如下程序:includeusing namespace std;Class TestClass{int a;public:TestClass(in

    有如下程序: #include<iostream> using namespace std; Class TestClass {int a; public: TestClass(int x){a=x;} void show(){cout<<a;}}; class TestClass1:public TestClass {int b; public: TestClass1(int i):TestClass(i+1),b(i){} voi

    A.5

    B.1

    C.0

    D.2


    正确答案:D
    解析: TestClass为TestClass1的基类,在主函数main中定义TestClass对象b,*p。TestClassl对象d,p指向d,调用其show函数。“TestClass(int i):TestClass(i+1),b(i){}”语句中的TestClass基类参数为2,所以show输出2。