有以下程序: #include<iostream> using namespace std; class A { private: int x; public: A(int a) {

admin2010-03-29  22

问题 有以下程序:    #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

答案1

解析 本题考核友元类的应用。在程序中,类B是类A的友元类,因此,在类 B的所有成员函数中均可访问类A的任何成员。在main()中,先定义类A的一个对象a(10)和类B的一个对象b。然后通过对象b调用其成员函数print(),输出对象a的私有成员x的值减1即9。
转载请注明原文地址:https://kaotiyun.com/show/mTjp777K
0

最新回复(0)