自学内容网 自学内容网

[C++ 核心编程]笔记 4.4.3 成员函数做友元

4.4.3 成员函数做友元

核心代码:
在这里插入图片描述
加入此行代码即可使目标成员函数做友元, 即可在另一个类的成员函数访问其中的私有权限

#include<iostream>
using namespace std;
#include<string>

class Building;
class GoodGay
{
public:
GoodGay();

void visit();//让visit 函数可以访问Building中私有成员
void visit2();//让visit2函数不可以访问Building中私有成员

Building* building;
};

class Building
{
//告诉编译器  GoodGay类下的visit成员函数作为本类的好朋友, 可以访问私有成员
friend void 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 << "visit 函数正在访问: " << building->m_BedRoom << endl;
}

void test01()
{
GoodGay gg;
gg.visit();
gg.visit2();
}

int main()
{
test01();

system("pause");
return 0;
}

原文地址:https://blog.csdn.net/qq_42995393/article/details/143589144

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!