涨知识
最近在学习C++ 友元函数(成员函数做友元)这里遇到了一个小问题学习记录下(这个老师讲的超级好,推荐)。
起因
想创建两个类,Building类和GoodGay类,Building类中设置公开访问的SittingRoom和私有的BedRoom,类GoodGay中有两个函数 visit1() 和 visit2(),想把成员函数visit1(),设置为Building类的友元函数来访问私有的BedRoom,但是却出现了问题,最开始的代码如下。
#include<iostream>
using namespace std;
#include<string>
class GoodGay;
class Building
{
friend void GoodGay::visit1();
public:
string SittingRoom;
Building()
{
SittingRoom = "客厅";
BedRoom = "卧室";
}
private:
string BedRoom;
};
class GoodGay
{
public:
Building *building;
GoodGay()
{
building = new Building; // 创建了一个指针在堆区 用building指针来维护
}
void visit1()
{
cout <<"visit1 正在访问:"<<building->SittingRoom<<endl;
cout <<"visit1 正在访问:"<<building->BedRoom<<endl;
}
void visit2()
{
cout <<"visit2 正在访问:"<<