멤버 함수는 오버로드될 수 있지만 멤버 함수는 이 클래스의 다른 멤버 함수만 오버로드할 수 있습니다. 클래스의 멤버 함수는 일반적인 비멤버 함수 및 다른 클래스에서 선언된 함수와 관련이 없으며 오버로드될 수 없습니다.
멤버 함수는 오버로드될 수 있습니다.
멤버 함수는 이 클래스의 다른 멤버 함수만 오버로드할 수 있습니다. 클래스의 멤버 함수는 일반적인 비멤버 함수 및 다른 클래스에서 선언된 함수와 관련이 없으며 오버로드될 수 없습니다. 일반 함수와 마찬가지로 오버로드된 멤버 함수에도 동일한 규칙이 적용됩니다. 오버로드된 두 멤버의 형식 매개 변수 수와 유형은 정확히 동일할 수 없습니다. 비멤버 오버로드 함수 호출에 사용되는 함수 일치 프로세스는 오버로드된 멤버 함수 호출에도 적용됩니다.
오버로드된 멤버 함수 정의
오버로드를 설명하기 위해 Screen 클래스의 오버로드된 멤버 두 개를 제공하여 창에서 특정 문자를 반환할 수 있습니다. 두 개의 오버로드된 멤버 중 한 버전은 현재 커서가 나타내는 문자를 반환하고 다른 버전은 지정된 행과 열의 문자를 반환합니다.
class Screen { public: typedef std::string::size_type index; // return character at the cursor or at a given position char get() const { return contents[cursor]; } char get(index ht, index wd) const; // remaining members private: std::string contents; index cursor; index height, width; };
오버로드된 함수와 마찬가지로 지정된 인수에 적절한 수와 유형의 인수를 제공합니다. 함수 호출을 실행할 버전을 선택하려면:
Screen myscreen; char ch = myscreen.get();// calls Screen::get() ch = myscreen.get(0,0); // calls Screen::get(index, index)
추천 튜토리얼: "c++ 비디오 튜토리얼"
위 내용은 멤버 함수가 오버로드될 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!