#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <string>
using namespace std;
class Building{
//让全局的好基友函数变为好朋友
friend void goodGay(Building * building);
public:
Building(){
this->m_sittingroom = "客厅";
this->m_bedroom = "卧室";
}
public:
string m_sittingroom;
private:
string m_bedroom;
};
void goodGay(Building * building){
cout <<"好基友正在访问" << building->m_sittingroom <<endl;
cout << "好基友正在访问" << building->m_bedroom << endl;
//building->m_bedroom = "卧室";
}
//友元函数目的访问类中私有属性
void test01(){
Building * building = new Building;
goodGay(building);
}
int main(void){
test01();
system("pause");
}
全局函数做友元函数,全局函数在类中做申明,并且最前面关键词friend
让整个类做友元类
friend class 类名
友元类是单向的,不可传递的
让成员函数做友元函数
friend void goodGay::visit()