以下程序的执行结果是( )。 #include<iostream.h> class TcstClass2 { public: TestClass2(){}; TestClass2(int i,int j

admin2020-04-07  22

问题 以下程序的执行结果是(    )。
    #include<iostream.h>
    class TcstClass2
    {
    public:
    TestClass2(){};
    TestClass2(int i,int j);
    void printb();
    private:
    int a,b;
    };
    class TestClass1
    {
    public:
    TestClass1(){}
    TestClass1(int i,int j);
    void printa();
    private:
    TestClass2 c;
    };
    TestClass1::TestClass1(int i,int j):c(i,j)
    {}
    void TestClass1::printa()
    {c.printb();}
    TestClass2::TestClass2(int i,int j)
    {a=i;
    b=j;
    }
    void TestClass2::printb()
    { cout<<’’a="<<a<<’’,’’<<’’b=’’<<b<<end1;
    }
    void main()
    {TestClass1m(7,9);
    m.printa();
    }

选项 A、a=7,b=8
B、a=8,b=7
C、a=7,b=9
D、a=8,b=9

答案C

解析 由主函数main入手,定义了TestClassl的对象m,其中参数为7和9。“m.printa();”中TestClass1中printa为“c.printb();”,其中c为TestClass2的对象,所以printb为TestClass2中的“void TestClass2::printb()”,即输出为“a=7,b=9”。
转载请注明原文地址:https://kaotiyun.com/show/zR8p777K
0

最新回复(0)