public 是可以在类外访问的 而private是不允许在类外访问的 但是使用friend仍然可以使c++的全员函数访问private的内容
#include<iostream>
using namespace std;
class Building
{friend void goodgay(Building *building); //全局函数在类内前面加上fiend 这个函数就可以访问类内的private了
public: Building(){m_SittingRoom="客厅";m_BedRoom="卧室";}
public :string m_SittingRoom; //客厅
private: string m_BedRoom; //卧室
};
void goodgay(Building *building) //这里指针或者引用都是可以的
{cout<<"好基友正在访问: "<<building->m_SittingRoom<<endl; //访问public cout<<"好基友正在访问: "<<building->m_BedRoom<<endl; //函数加firend后可以访问私有成员变量
}
void test()
{Building building;goodgay(&building);
}
int main()
{test();
}