#include <iostream>
using namespace std;
class family
{
private:
double weight;
double height;
public:
family(double x,double y);
~family();
double getWeight();
double getHeight();
double setWeight();
double setHeight();
bool operator==(const family &)const;
};
bool family::operator ==(const family &b)const
{
return weight==b.weight;
}
family::family(double x, double y)
{
weight = x;
height = y;
}
double family::getWeight()
{
return weight;
}
double family::getHeight()
{
return height;
}
family::~family(){}
int main()
{
family a(70.0,175.2);
family b(68.5,178.2);
if(a==b)
cout << "A is bigger than B" << endl;
else
cout << "A is smaller than B" << endl;
return 0;
}
위 코드에서는 멤버 함수로 연산자 오버로딩을 구현할 수 있습니다. 그러나 비 멤버 함수로 연산자 오버로딩을 구현하지 못했습니다. 이 코드를 어떻게 수정해야합니까 bb 도와주세요 ..멤버 함수에서 비 멤버 함수로 코드 변환
관련 코드를 표시하고 관련없는 코드를 제거하는 것이 좋습니다. – juanchopanza
실패한 시도의 코드는 어디에 있습니까? –
'return weight == b.weight;''=='와'double '을 비교하지 마십시오. –