以下程序的执行结果是( )。
#include<iostream.h>
class TestClass2
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;
;
TestClassl::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<<endl;
void main()
TestClass1 m(7,9);
m.prints();
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”。