首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

error C2683: dynamic_cast : “k1”不是多态类型 哭了!该如何解决

2012-03-20 
error C2683: dynamic_cast : “k1”不是多态类型哭了!!!!classk1{}classk2:publick1{}int_tmain(intargc,

error C2683: dynamic_cast : “k1”不是多态类型 哭了!!!!
class   k1
{
};
class   k2   :   public   k1
{
};
int   _tmain(int   argc,   _TCHAR*   argv[])
{  
k1   *p   =   new   k2();
k2   *pp   =   dynamic_cast <k2*> (p);
}
---------------------------
几乎照抄msdn上的例子     怎么还出错

[解决办法]
给k1加个虚拟函数
[解决办法]
出错信息不是已经说得很清楚了嘛。认真看信息,实在不行就在出错信息上按F1
[解决办法]
class k1
{
public:
virtual ~k1(){}
};
class k2 : public k1
{
};
int _tmain(int argc, _TCHAR* argv[])
{
k1 *p = new k2();
k2 *pp = dynamic_cast <k2*> (p);
}

热点排行