برنامه اي كه نوشتم و در زير اومده برنامه ماشين حساب هست كه پنج عمل(چهار عمل اصلي و جذر) انجام ميده اين كد 2 مشكل داره كه من نتونستم حلشون كنم لطفا در حل اين دو مشكل كمك كنيد:11:
و ارورهايي هم كه ميده اينها هستند كه در خطوط 159 و 163 هستندکد:#include <iostream>
#define EVER ;;
using namespace std;
class Add
{
public:
Add();
Add(int);
~Add() {}
Add(const Add&);
Add& operator+(const Add&);
void SetAdd(int);
int GetAdd() const;
friend ostream& operator<<(ostream& os,Add& ad)
{
os << ad.GetAdd();
return os;
}
private:
int itsX;
};
Add::Add():
itsX(0)
{}
Add::Add(int x):
itsX(x)
{}
Add::Add(const Add& rhs)
{
this->itsX = rhs.GetAdd();
}
Add& Add::operator+(const Add& rhs)
{
this->itsX += rhs.GetAdd();
return *this;
}
void Add::SetAdd(int x)
{
itsX = x;
}
int Add::GetAdd() const
{
return itsX;
}
class Minus
{
public:
Minus();
Minus(int);
~Minus() {}
Minus(const Minus&);
Minus& operator-(const Minus&);
void SetM(int x) { itsX = x; }
int GetM() const { return itsX; }
friend ostream& operator <<(ostream& os,Minus& mi)
{
os << mi.GetM();
return os;
}
private:
int itsX;
};
Minus::Minus():
itsX(0)
{}
Minus::Minus(int x):
itsX(x)
{}
Minus::Minus(const Minus& rhs)
{
itsX = rhs.GetM();
}
Minus& Minus::operator -(const Minus& rhs)
{
this->itsX -= rhs.GetM();
return *this;
}
class Zarb
{
public:
Zarb():itsX(0){}
Zarb(int x):itsX(x){}
~Zarb() {}
Zarb(const Zarb&);
Zarb& operator * (const Zarb&);
void SetZ(int x) { itsX = x; }
int GetZ() const { return itsX; }
friend ostream& operator << (ostream& os,Zarb& za)
{
os << za.GetZ();
return os;
}
private:
int itsX;
};
Zarb::Zarb(const Zarb& rhs)
{
itsX = rhs.GetZ();
}
Zarb& Zarb::operator *(const Zarb& rhs)
{
this->itsX *= rhs.GetZ();
return *this;
}
class Taghsim
{
public:
Taghsim():itsX(0){}
Taghsim(int x):itsX(x){}
~Taghsim(){}
Taghsim(const Taghsim&);
Taghsim& operator / (const Taghsim&);
void SetT(int x) { itsX = x; }
int GetT() const { return itsX; }
friend ostream& operator << (ostream& os,Taghsim& ta)
{
os <<ta.GetT();
return os;
}
private:
int itsX;
};
Taghsim::Taghsim(const Taghsim& rhs)
{
itsX = rhs.GetT();
}
Taghsim& Taghsim::operator / (const Taghsim& rhs)
{
int temp;
temp = this->itsX / rhs.GetT();
this->itsX = temp;
return *this;
}
class Jazr
{
public:
Jazr():itsX(0){}
Jazr(float x):itsX(x){}
~Jazr(){}
Jazr(const Jazr& rhs);
float JazrFunc(float);
void SetJ(float x) { itsX = x; }
float GetJ() const { return itsX; }
friend ostream& operator << (ostream& os,Jazr& ja)
{
os << ja.JazrFunc(ja.GetJ());
return os;
}
private:
float itsX;
}
Jazr::JazrFunc(const Jazr& rhs)
{
itsX = rhs.GetJ();
}
float& Jazr::JazrFunc(float& tmp)
{
if(tmp * tmp > this->itsX || tmp * tmp < this->itsX)
return 1;// return one for mistake
return JazrFunc(tmp - 0.1);
}
void AddFunc();
void MinusFunc();
void ZarbFunc();
void TaghsimFunc();
void JazrFunc();
int main()
{
int choice;
for(EVER)
{
cout <<"\n(1)Add(2)Minus(3)Zarb(4)Taghsim(5)JazrFunc(0 to quit)";
cin>>choice;
if(choice == 0)
break;
switch(choice)
{
case(1): AddFunc(); break;
case(2): MinusFunc(); break;
case(3): ZarbFunc(); break;
case(4): TaghsimFunc(); break;
case(5): JazrFunc(); break;
default: cout <<"\nAre you ok?!\n"; break;
}
}
return 0;
}
void AddFunc()
{
int one,two;
cout <<"\nEnter number one:";
cin>>one;
cout <<"\nEnter number two:";
cin>>two;
Add One(one);
Add Two(two);
cout <<"\n->\t"<<One + Two <<endl;
}
void MinusFunc()
{
int one,two;
cout <<"\nEnter number one:";
cin>>one;
cout <<"\nEnter number two:";
cin>>two;
Minus One(one);
Minus Two(two);
cout <<"\n->\t"<<One - Two <<endl;
}
void ZarbFunc()
{
int one,two;
cout <<"\nEnter number one:";
cin>>one;
cout <<"\nEnter number two:";
cin>>two;
Zarb One(one);
Zarb Two(two);
cout <<"\n->\t"<<One * Two <<endl;
}
void TaghsimFunc()
{
int one,two;
cout <<"\nEnter number one:";
cin>>one;
cout <<"\nEnter number two:";
cin>>two;
Taghsim One(one);
Taghsim Two(two);
cout <<"\n->\t"<<One / Two <<endl;
}
void JazrFunc()
{
float number;
cout<<"\nEnter your number:";
cin>>number;
Jazr jazr(number);
cout <<"\n->\t"<< jazr <<endl;
}
کد:cpp(159) : error C2511: 'JazrFunc' : overloaded member function 'class Jazr (const class Jazr &)' not found in 'Jazr'
cpp(163) : error C2511: 'JazrFunc' : overloaded member function 'float &(float &)' not found in 'Jazr'