문제

내 방법이 끝날 때 CHE Const로 왜 오류가 발생하는지 이해하지 못합니다.메소드 인쇄는 모든 클래스 멤버를 변경하지 않습니다.

class Hello{

public:
   int get_member() {return member_;};
   void print() const {
       cout<<get_member()<<endl; 
   };

private:
   int member_;

 };
.

오류 메시지는 다음과 같습니다. 'int hello :: get_member ()'의 "this"인수로 "const hello"라는 오류를 전달합니다.

도움이 되었습니까?

해결책

int get_member() const {return member_;}
.

는 그것을 고쳐야합니다.const 회원이 아닌 멤버를 호출 할 수 없으므로 const의 '약속'을 깨뜨릴 수 없습니다.전화 중에 객체가 수정되지 않았다는 보장이 없으면

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top