내 영어에 대해 사과하십시오. 저는 C ++에서 매우 간단한 문제를 해결하려고합니다. 하지만 나는 C ++에서 새롭기 때문에 이것을 해결할 수 없습니다 :( 헤더 파일에 연산자 오버로딩을 사용하려고합니다. 새로운 경우이 질문 을 구현하려고합니다 .하지만 getStatusPoint 메서드에서 오류가 발생했습니다.
int getStatusPoint(Alien const& alien)
{
return alien.getHeight()*alien.getWeight()*aliean.getGender();
}
bool Alien::operator>(const Alien& alien) const {
return(getStatusPoint(*this) > getStatusPoint(alien));
}
getStatusPoint 메서드를 사용하지 않으면 제대로 작동합니다. 누구든지 getStatusPoint ()를 사용 하여이 질문을 해결하도록 도와주세요.
오류 메시지에 따르면 getHeight와 getWeight가 모두 const로 표시되지 않았습니다. 정의해야합니다
class Alien ... {
public:
int getHeight() const { ... }
...
};
구현은 클래스의 필드에 대한 액세스를 작성하거나 클래스의 상수가 아닌 메서드를 호출해서는 안됩니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다