设为首页 加入收藏

TOP

C++中的友元函数和友元类
2015-07-20 17:36:32 来源: 作者: 【 】 浏览:3
Tags:函数 元类

#include
using namespace std;

class myClass1
{
public :
myClass1():n(0){};

void setn(int tmpn){this->n=tmpn;}

void show(){cout<


private:

//友元类
friend class myClass2;
//使用友元函数来改变myclass1中成员变量n的值
friend void setnF1(myClass1 & tmpClass,int tmpn);

int n;
};

class myClass2
{
public:
//使用友元类中的成员函数来改变myclass1中成员变量n的值
void setnF2(myClass1 & tmpClass,int tmpn){tmpClass.n=tmpn;}

};

void setnF1(myClass1 & tmpClass,int tmpn)
{
tmpClass.n=tmpn;
}

int main()
{
myClass1 p1;
myClass2 p2;
cout<<"p1的成员变量n默认为:"< p1.show();

cout<<"使用myClass1自己的成员函数设置后:"< p1.setn(100);
p1.show();

cout<<"使用友元函数设置后:"< setnF1(p1,101);
p1.show();

cout<<"使用友元类设置后:"< p2.setnF2(p1,102);
p1.show();

return 0;
}

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇C++构造函数初始化顺序 下一篇Codeforces Round #269 (Div. 2) ..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·PostgreSQL 索引 - (2025-12-25 22:20:43)
·MySQL Node.js 连接 (2025-12-25 22:20:41)
·SQL 撤销索引、表以 (2025-12-25 22:20:38)
·Linux系统简介 (2025-12-25 21:55:25)
·Linux安装MySQL过程 (2025-12-25 21:55:22)