以下程序的执行结果是( )。 #include class TestClass2 { public: TestClass2 (){}; TestClass2(int i,i

admin2012-12-29  29

问题 以下程序的执行结果是(             )。
    #include
    class TestClass2
    {
      public:
      TestClass2 (){};
      TestClass2(int i,int j);
      void printb();
      private:
      int a,b;
    };
    class TestClass1
    {
      public:
      TestClass1(){}
      TestClass1(int i,intj);
      void printa();
      private:
      TestClass2 c;
    };
    TestClass1::TestClass1(int i,intj):c(ij)
    {}
    void TestClass1::pdnta()
    {
      c.printb();
    }
    TestClass2::TestClass2(int i,int j)
    {
      a=i:
      b=j;
    }
    void TestClass2::printb()
    {
      cout<<“a=”<    }
    void main()
    {
      TestClass1 m(7,9);
      m.priam();
    }

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

答案C

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

最新回复(0)