加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

我可以在C中看到错误的指针错误吗?

发布时间:2020-12-16 03:21:16 所属栏目:百科 来源:网络整理
导读:我想知道是否有可能在C中捕获这样的错误: object* p = new object;delete p;delete p; // This would cause an error,can I catch this? 我可以检查指针是否有效? 我可以抓住一些例外吗? 我知道我可以在第一个对象删除后将指针p设置为NULL.但只是想象你不
我想知道是否有可能在C中捕获这样的错误:
object* p = new object;

delete p;
delete p; // This would cause an error,can I catch this?

>我可以检查指针是否有效?
>我可以抓住一些例外吗?

我知道我可以在第一个对象删除后将指针p设置为NULL.但只是想象你不会这样做.

解决方法

我不认为你可以抓住这种错误,因为我认为结果是未定义的行为.它可能什么都不做,它可能会崩溃,它可能只是损坏内存,并导致一个问题在后面的一行.

如果您发现它使用当前的编译器执行某些特定操作,那么可以尝试并处理这些编译器,但它可能会在调试和释放中执行不同的操作,并且在升级编译器版本时会再次出现.

建议将指针设置为null,但我认为您最好使用智能指针,而不是删除它们.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读