VC++启动RTTI

来源:互联网 发布:淘宝申请退款 编辑:程序博客网 时间:2024/04/30 14:35

在看《MFC深入浅出》里面的RTTI有个小例子,在VC里面运行Debug error。原来是没有启动RTTI。

使用dynamic_cast就必须在编译器中启动RTTI,即“运行时期类型识别”。默认情况下编译器是不启动RTTI的。凡是程序中用到了RTTI(比如typeid)都要在编译器中打开RTTI,这样才能正确编译。

VC6下启动RTTI:

工程—》设置—》C/C++—》分类—》C++语言,勾选允许允许时间类型信息(RTTI)。

VS.net2003下启动RTTI:

项目->项目属性->C/C++->语言,将“启用运行时类型信息” 选择为“是”。


0 0