C++ 类,约分函数没有声明?
#include<iostream.h>//using namespace std;
class Fraction
{public:
Fraction(int m,int n){
zi=m,mu=n;}
int zi,mu;
friend Fraction operator+(Fraction &f1,Fraction &f2);
void yuefen(int m,int n);
int gongyue(int m,int n);
void tongfen(int m,int n);
void display(Fraction &f);
};
void Fraction::display( Fraction &f)
{
cout<<" :"<<f.zi/f.mu<<" "<<endl;
}
Fraction operator + (Fraction &f1,Fraction &f2)
{
Fraction f3(0,1);
f3.mu=f1.mu*f2.mu;
f3.zi=f1.zi*f2.mu+f1.mu*f2.zi;
yuefen(f3.zi,f3.mu);
return f3;
};
void Fraction::yuefen(int zi,int mu)
{
int t;
t=gongyue(zi,mu);
zi/=t;
mu/=t;
}
int Fraction::gongyue(int m,int n)
{
int t;
if(m<n){t=m;m=n;n=t;}
while(t=m/n)
{m=n;
n=t; }
return n;
}
void Fraction::tongfen(Fraction f1,Fraction f2)
{ int gongbei;
gongbei=f1.mu*f2.mu/gongyue(f1.mu,f2.mu);
f1.mu=f2.mu=gongbei;
f1.zi=gongbei/f1.mu*f1.zi;
f2.zi=gongbei/f2.mu*f2.zi;
cout<<"通分之后2个分数分别的:"<<endl;
display(f1);
display(f2);
}
//建立一个分数类fraction。分数类的数据成员包括分子和分母。
int main()
{
Fraction f1(1,3),f2(1,2);
return 0;
}
建立一个简单的C++类。分子分母,然后求通分,公约数等功能。
总是提示:rror C2065: 'yuefen' : undeclared identifier