C++友元类声明

class A
{
public:
	A ()
	{
		a = 1;
	}
	void print()
	{
		cout <<a<<endl;
	}
//	friend class B; 友元类也可放在此处 
private:
	int a;
	friend class B;//这里不能为friend B; 
};

class B
{
public:
	void f(A& _a)
	{
		_a.a = 2;//由于用到A的成员变量
				 //则必须先声明类A 
	}
};
int main(){
	A a;
	a.print();
	B b;
	b.f(a);
	a.print();
	return 0;
}
```cpp
在这里插入代码片

运行结果:
C++友元类声明_第1张图片


你可能感兴趣的:(C++)