以下程序输出结果为__________。 #include using namespace std; class TestClass1 { public: TestClass1(){} TestCla

admin2012-12-29  30

问题 以下程序输出结果为__________。
    #include
    using namespace std;
    class TestClass1
    {
    public:
    TestClass1(){}
    TestClass1(int i)
    {xl=i;}
    void dispa()
    {cout<<“x1=”<    private:
    int x1;
    };
    class TestClass2:public TestClass1
    {
    public:
    TestClass2(){}
    TestClass2(int i):TestClass1(i+10)
    {
    x2=i;
    }
    void dispb()
    {
    dispa0;
    cout<<“x2=”<    }
    private:
    int x2;
    };
    int main()
    {
    TestClass2 b(2);
    b.dispb();
    return 0;
    }

选项

答案x1=12.x2=2

解析 由主函数main入手,首先定义类TegtClass2的对象b,成员数据为2。然后调用dispb函数。dispb中首先执行dispa函数,TestClass2为TestClass1的派生类,“TestClass2(int i):TestClass1(i+10)”所以Testclass1中的x1=12,所以dispa输出的结果为x1=12。在TestClass1中x2=2,所以dispb中的输出语句“cout<<“x2=”<
转载请注明原文地址:https://jikaoti.com/ti/FhL0FFFM
0

最新回复(0)