Father* f1 = new Son();这句,父类指针已经指向了子类对象,也就是说强制转换应该是没有问题的。书中介绍说dynamic_cast转换如果不成功,会返回NULL,但是怎么会通不过编译呢?
显然你的类不是多态类,不妨加上一个virtual析构函数。
估计代码 Father* f1 = new Son();的问题吧。
这是测试多态还是 dynamic_cast的用法?????????