컴파일러 경고(수준 4) C4266
'function' : 기본 'type'의 가상 멤버 함수에 대해 재정의를 사용할 수 없습니다. 함수가 숨겨집니다.
파생 클래스에서 가상 함수의 오버로드 중 일부를 재정의하지 않았습니다.
이 경고는 기본적으로 해제되어 있습니다. 자세한 내용은 Compiler Warnings That Are Off by Default를 참조하십시오.
다음 샘플에서는 C4266 경고가 발생하는 경우를 보여 줍니다.
// C4266.cpp
// compile with: /W4 /c
#pragma warning (default : 4266)
class Engine {
public:
virtual void OnException(int&,int);
virtual void OnException(int&,int&,int);
};
class LocalBinding : private Engine {
virtual void OnException(int&,int);
}; // C4266
다음과 같이 해결할 수 있습니다.
// C4266b.cpp
// compile with: /W4 /c
#pragma warning (default : 4266)
class Engine {
public:
virtual void OnException(int&,int);
virtual void OnException(int&,int&,int);
};
class LocalBinding : private Engine {
virtual void OnException(int&,int);
virtual void OnException(int&, int&, int);
};