有以下程序: #include<iostream> using namespace std; class A { private:int x; public:A(int a){ x=a;}friend class B; }; class B { public:void print(A a){ a.x--; cout<<a, x<<end1;} }; int main () {A a(10);B b;b.print (a) ;return 0; } 程序执行后的输出结果是( )。
A.9
B.10
C.11
D.12
参考答案:A
解析: 本题考核友元类的应用。在程序中,类B是类A的友元类,因此,在类 B的所有成员函数中均可访问类A的任何成员。在main()中,先定义类A的一个对象a(10)和类B的一个对象b。然后通过对象b调用其成员函数print(),输出对象a的私有成员x的值减1即9。