你好,欢迎来到电脑编程技巧与维护杂志社! 杂志社简介广告服务读者反馈编程社区  
合订本订阅
 
 
您的位置:技术专栏 / C专栏
C++中的友元函数和友元类
 

#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; 
}

  推荐精品文章

·2024年9月目录 
·2024年8月目录 
·2024年7月目录 
·2024年6月目录 
·2024年5月目录 
·2024年4月目录 
·2024年3月目录 
·2024年2月目录 
·2024年1月目录
·2023年12月目录
·2023年11月目录
·2023年10月目录
·2023年9月目录 
·2023年8月目录 

  联系方式
TEL:010-82561037
Fax: 010-82561614
QQ: 100164630
Mail:gaojian@comprg.com.cn

  友情链接
 
Copyright 2001-2010, www.comprg.com.cn, All Rights Reserved
京ICP备14022230号-1,电话/传真:010-82561037 82561614 ,Mail:gaojian@comprg.com.cn
地址:北京市海淀区远大路20号宝蓝大厦E座704,邮编:100089