3
Stroustrup의 C++ 11 FAQ를 통해 C++ 11을 배우고 있습니다. 나는 질문이있다.RTTI는 최종 작업을합니까?
가상 함수가 클래스에서 final로 정의되면 RTTI (dynamic_cast 및 typeid)는 파생 클래스에서 여전히 작동합니까?
@MSalters : 기본 클래스에 가상 함수 final
선언
struct A {
virtual void f() final; // only one virtual function, but final
};
struct B : A {
};
A* pa = new B;
B* pb = dynamic_cast<B*>(pa); // would this work? I guess it applies to typeid as well.
는 C++ 11 초안에 링크를 내 프로필을 참조하십시오. 완전한 최종 표준은 자유롭게 사용할 수 없으므로 지불해야합니다. 슬픈 일입니다. –
@ RafałRawicki : [GitHub] (https://github.com/cplusplus/draft/tree/master/papers)에서 최신 N3376 (2012-02-28)을 사용할 수 있습니다. – ipc
@ipc : http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2012/n3376.pdf에서 n3376을 직접 얻을 수도 있습니다. – kennytm