我有两个继承自基类的类,在这个基类中,我想检索已经创建的实例。
C* A::getCinstance()
{
return dynamic_cast<C*>(this);
}
我有这个错误
erreur: cannot dynamic_cast ‘this’ (of type ‘class A* const’) to type ‘struct C*’ (target is not pointer or reference to complete type)
我正在研究,但我没有在互联网上找到任何东西。
我提前感谢你,抱歉我的英语不好。
答案 0 :(得分:0)
dynamic_cast
的典型用法是从基类实例转换为派生类。例如,当类C
将类A
作为基类时。 (但是,还有其他情况可以使用dynamic_cast,但我认为此时讨论不会对您有所帮助。)此编译器错误告诉您没有dynamic_cast
的情况可能用过了。事实上,错误说&#34;'struct C *'(目标不是指针或对完整类型的引用)&#34;,这意味着它甚至不知道C
是什么。如需更多帮助,您需要提供更完整的示例。