关闭

warning C4150: 删除指向不完整“CBasexxx”类型的指针;没有调用析构函数

标签: cdelete编译器class
3821人阅读 评论(2) 收藏 举报
分类:

VC编译的时候发现一个“warning C4150: 删除指向不完整“CBaseData”类型的指针;没有调用析构函数”

 

而且CBaseData也定义了析构函数。

 

发现程序有内存泄露问题,同时,内存的释放我是通过删除指向派生类的基类指针。

 

估计释放内存是因为删除对象没有释放内存。

 

根据上面的warning知道了,是因为我调用删除对象的时候,CBaseData的定义不完整。下面贴出代码。。。。。。

 

由于Funtion的实现函数没有跟CBaseData的实现函数放在一起,估计编译器在执行delete pBData时没有找到CBaseData的完整定义

所以造成删除对象不成功。

不知道我这样解释大家看懂没有。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:39677次
    • 积分:474
    • 等级:
    • 排名:千里之外
    • 原创:6篇
    • 转载:10篇
    • 译文:0篇
    • 评论:9条
    文章分类
    最新评论