主题:关于类的友元的使用
今天刚接触类的友元编写了这样一段程序,错误很多。还望大神指教
题目:定义类X,Y,Z,函数h(X *),满足:类X有私有成员i,Y的成员函数g(X *)是X的友元函数,实现对x的成员i加1,类z是类X的友元类,其成员函数f(X *)实现对X成员i加5,函数h(X *)是X的友元函数,实现对x的成员i加10.用结构文件来写。
//l类的定义
#include<iostream>
using namespace std;
class X
{
public:
X();
friend void h(X *);
friend void g(X *);
friend class Z;
private:
static int i;
};
class Y
{
public:
void g(X *);
};
class Z
{
public:
void f(X *);
};
void h(X *);
//类的实现
#include"fri_cla_def.h"
void h(X *x)
{
x->i+=1;
}
void Y::g(X *x)
{
x->i+=10;
}
void Z::f(X *x)
{
x->i+=5;
}
#include"fri_cla_def.h"
void main()
{
}