友元函数
友元函数能够访问类中的private内容
下面是实例展示:
一个好朋友可以去自己的客厅但是不一定可以去自己的卧室,只有好基友才可以去自己的卧室,创建一个类来实现这段话
class Buliding {
friend void goodgay(Building &p);//友元的申明
public:
Building(){
m_sittingroom="客厅";
m_bedroom="卧室";
}
string m_sittingroom;
private:
string m_bedroom;
};
void goodgay(Building &p){
cout<<"好基友正在访问"<<p.sittingroom;
cout<<"好基友正在访问"<<p.bedroom;//如果直接写的话石肯定错的,无法调用私有的内容,所以必须把这个函数变成友元
}
类做友元
一个类是另一个类的友元那么这个友元类就能够访问另一个类的private
直接上代码演示,案例与上述一致
class Buliding {
friend void goodgay(Building &p);//友元的申明
public:
string m_sittingroom;
private:
string m_bedroom;
};
Builidng::BUilding(){
m_sittingroom = "客厅";
m_bedroom = "卧室";
}
class Goodgay{
public:
Building * building;
void visit(Building &building){
}
public:
};