首页 > 其他 > 详细

warning: deleting 'void *' is undefined 错误

时间:2020-01-16 16:26:30      阅读:75      评论:0      收藏:0      [点我收藏+]

如果我们new出来的指针是一个基本类型,没什么关系,内存还是会被释放的,但是如果是一个类对象指针,在处理过程中转成了void*,那就有问题了,析构函数将不会被调用。
故new的指针类型要和delete的指针类型要保持一致。

如下所示:

object* p=new object[10];

void* p2=(void *)p;

//注意指针转换

delete[] (object*) p;

 

warning: deleting 'void *' is undefined 错误

原文:https://www.cnblogs.com/lidabo/p/12201778.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!