我想施放此:投常量类的dynamic_cast
class Base
{
public:
virtual ~Base(){};
};
class Der : public Base {};
int main()
{
const Base* base = new Der;
Der* der = dynamic_cast<Der*>(base); // Error
return 0;
}
我该怎么办? 我试图把:const Der* der = dynamic_cast<Der*>(base);
来支持常量,但这是行不通的。
我试过了不行。 – okami 2010-08-31 02:42:36
您需要两次const - 一次在被分配的变量的类型中,一次在'dynamic_cast'中。在你尝试的例子中,你只有第一个。 – Eclipse 2010-08-31 02:48:42
好的。但只是在我的问题下的一个quesiton。 为什么要保持虚拟〜Base(){};到dynamic_cast不会给我一个错误? – okami 2010-08-31 02:58:24