#include<bits/stdc++.h>
using namespace std;
class Building;
class GoodGay{
public:
GoodGay();//初始化构造函数
void visit();//让visit函数可以访问Building中的私有成员
void visit2();//让visit2函数不能访问Building中的私有成员
Building *building ;
};
class Building{
friend void GoodGay::visit();//告诉编译器 GoodGay类下的visit函数作为本类的好朋友
public:
Building();//初始化构造函数
public:
string m_SittingRoom;
private:
string m_BedRoom;
};
//类外实现成员函数
Building::Building(){
m_SittingRoom="客厅";
m_BedRoom="卧室";
}
GoodGay::GoodGay(){
building =new Building;
}
void GoodGay::visit(){
cout<<"visit函数正在访问: "<<building->m_SittingRoom<<endl;
cout<<"visit函数正在访问: "<<building->m_BedRoom<<endl;
}
void GoodGay::visit2(){
cout<<"visit2函数正在访问: "<<building->m_SittingRoom<<endl;
//cout<<"visit2函数正在访问: "<<building->m_BedRoom<<endl;
}
void test01(){
GoodGay gg;
gg.visit();
gg.visit2();
}
int main()
{
//成员函数做友元
test01();
return 0;
}
03-15
385
07-11
387
10-02
1700
10-07
1559