(파생되지 않음)과 final
키워드 설명하면서 저자는이 예제를 제공합니다가 더 기본 클래스가없는 클래스의 가상 함수에 마지막 키워드를 추가하는 것은 의미가 있습니까 나는 멋진 <a href="https://isocpp.org/wiki/faq/cpp11-language-classes#final" rel="noreferrer">awesome C++11 tutorial</a>을 읽고있다
struct B {
virtual void f() const final; // do not override
virtual void g();
};
struct D : B {
void f() const; // error: D::f attempts to override final B::f
void g(); // OK
};
을
final
키워드를 사용하면 여기에 의미가 있습니까? 제 의견으로는 여기서 가상 키워드를 사용하지 말고 f()
이 무시되는 것을 막을 수 있습니다.
전문가가 따라 와서 정말로 모호한 컴파일 오류를 해결할 수있는 유스 케이스를 제시 할 수 있기 때문에 나는 두드리는 것을 원하지 않습니다 ...하지만 어리석은 일입니다. – StoryTeller
[가상 클래스와 최종 클래스로 기본 클래스 함수를 표시하는 데 의미가 있습니까?] (https://stackoverflow.com/questions/16739135/is-there-any-sense-in-marking-a-base) -class-function-as-both-virtual-and-final) –
실제로 더 많은 중복이 있습니다. [최종 가상 기능의 요점은 무엇입니까?] (https://stackoverflow.com/questions/11704406/) – Ruslan