友元类

 使用友元类时注意:
             (1) 友元关系不能被继承。 
             (2) 友元关系是单向的,不具有交换性。若类B是类A的友元,类A不一定是类B的友元,要看在类中是否有相应的声明。
             (3) 友元关系不具有传递性。若类B是类A的友元,类C是B的友元,类C不一定是类A的友元,同样要看类中是否有相应的申明
 

#include<iostream>
using namespace std;
class A
{
public:
    A(int x):x(x){};

    friend class B;

private:
    int x;

};
class B
{
public:
    B(A a):a(a){};

void display()
{
    cout<<a.x<<endl;
}

private:
    A a;

};
int main()
{
    A a(3);
    B b(a);
    b.display();
    return 0;
}

 

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页