今天正好用到了dynamic_cast这个东西,分享一下小经验
dynamic_cast是RTTI的一部分,所以要想用这个东西一定要先设定编译器的选项,在vc里面在C++那个选项卡里面有一个language,下面有一个runtime type id.. 打开就噢了,不然编译时是没有问题的,运行就会报错。
这样一种情况


















if语句中如果转换成功返回B*的指针。如果失败返回NULL。这都没问题大家都知道。
但是如果用引用的话就得注意了,看一下









今天正好用到了dynamic_cast这个东西,分享一下小经验
dynamic_cast是RTTI的一部分,所以要想用这个东西一定要先设定编译器的选项,在vc里面在C++那个选项卡里面有一个language,下面有一个runtime type id.. 打开就噢了,不然编译时是没有问题的,运行就会报错。
这样一种情况
if语句中如果转换成功返回B*的指针。如果失败返回NULL。这都没问题大家都知道。
但是如果用引用的话就得注意了,看一下