그런 경우 "const"의 목적은 무엇입니까?매개 변수가없는 메소드에서 const를 사용하는 이유는 무엇입니까?
std::string List::reqClubName() const
{
return m_Club;
}
덕분에 멤버 함수 후
그런 경우 "const"의 목적은 무엇입니까?매개 변수가없는 메소드에서 const를 사용하는 이유는 무엇입니까?
std::string List::reqClubName() const
{
return m_Club;
}
덕분에 멤버 함수 후
const
은 함수가의 일부 클래스에서 멤버 데이터를 수정하지 않는 것을 말한다.
올바른 동안이 질문에 실제로 대답하지 않습니다. –
멤버 수정을 금지하는 것이 멤버 함수를 const
으로 정규화하는 유일한 이유는 아닙니다. 당신이 회원을 수정할지 여부, 당신은 만 전화 발신 const
컨텍스트를 통해 개체의 멤버 함수 멤버 함수는 const
표시됩니다 수있는 경우 :
#include <iostream>
#include <string>
struct List
{
std::string reqClubName()
{
return m_Club;
}
private:
std::string m_Club;
};
int main()
{
const List l;
std::cout << l.reqClubName();
//^illegal: `l` is `const` but, `List::reqClubName` is not
}
언어 나 컴파일러 관리 어느 것을 reqClubName
아무튼를 어쨌든 객체를 수정하려고하지 마십시오. 프로그램이 컴파일되지 않습니다.
데이터 멤버를 수정해야하는 경우가 아니면 const
접미사를 기본 접근 방식으로 사용해야합니다.
정확하게 사용하지 않는 매개 변수는 ( –
) 사용하지 않으므로 내 경우 const는 메소드가 아무 것도 수정하지 않는지 확인하는 것입니다. 내가 맞습니까? –
@ user2984887 실제로. 변수가 선언 된 경우를 제외하고는 변수의 멤버를 변경할 수 없습니다. –