现在的位置: 首页 > 综合 > 正文

c++【友元】的一些用法

2013年07月22日 ⁄ 综合 ⁄ 共 548字 ⁄ 字号 评论关闭

http://zhidao.baidu.com/question/348527367.html

C++ 友元函数问题

定义类X,Y,Z,使之满足以下几个条件:类X有么一个私有成员i,类Y的一个成员函数f是类X的友元函数,实现对X的i加1操作。类Z是类X的友元类,Z的一个成员函数g实现对X的i加2操作。函数h是类X的友元函数,实现对X的i加3操作。我来帮他解答

#include <iostream>

using namespace std;

class X;

class Y
{
public:
	void add(X& x);//´Ë´¦º¯ÊýÖ»Äܹ»ÉùÃ÷£¬·ñÔò»á³ö´í¡£
};
class Z
{
public:
	void add(X&x);
};


class X
{
	int data;
	public:
		X(int data):data(data){}
		friend void Y::add(X& x);//ÀàÖеĺ¯ÊýµÄÓÑÔª
		friend Z;//ÀàµÄÓÑÔª
		friend void add(X& x);//Íⲿº¯Ê½ÎªÓÑÔª
		
};
void Y::add(X& x)
{
	x.data++;
}
void Z::add(X& x)
{
	x.data+=2;
}
void add(X& x)
{
	x.data+=3;
}
int main()
{
	

	return 0;
}

【上篇】
【下篇】

抱歉!评论已关闭.