危险的代码:

int* p=new int(1);
   delete p;
   delete p;

安全的代码:

int* p=new int(1);
   delete p;
   p = NULL;

(1)delete 一次以后,p成了野指针,它作为地址的值还是有效地没还可以访问它以前指向的内存,不过那片内存被重新格式化了;
(2)p不等于NULL,用 if(p) 语句不能判断它指向的内存是否有效(此时它指向的内存无效,p本身有效);
(3)delete 一次以后,不能再次delete,否则会报错;
(4)此时如果误用p指针,仍然可以修改内存的值和从该处取出数值,但此时数据不受保护,该内存空间可能被重新被分配给别的变量;
(5)如果p指向的空间再次被new函数分配,即使是分配给别的指针,即使分配大小与原来不一样,p又恢复了效力,可以改变内存的值,甚至可以重新被delete,p的作用与新分配的指针一样;

转自:https://www.cnblogs.com/romanten/p/6885216.html

线程 0x26ac 已退出,返回值为 0 (0x0)。
线程 0x4524 已退出,返回值为 0 (0x0)。
线程 0x22d4 已退出,返回值为 0 (0x0)。
线程 0x3b30 已退出,返回值为 0 (0x0)。
线程 0x3128 已退出,返回值为 0 (0x0)。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: carve::exception,位于内存位置 0x000000A88E715800 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: carve::exception,位于内存位置 0x000000A88E715800 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: BuildingException,位于内存位置 0x000000A88E716580 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: carve::exception,位于内存位置 0x000000A88E715800 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: carve::exception,位于内存位置 0x000000A88E715800 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: carve::exception,位于内存位置 0x000000A88E715800 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: BuildingException,位于内存位置 0x000000A88E716580 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: carve::exception,位于内存位置 0x000000A88E715800 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: carve::exception,位于内存位置 0x000000A88E715800 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: BuildingException,位于内存位置 0x000000A88E716580 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: carve::exception,位于内存位置 0x000000A88E715800 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: carve::exception,位于内存位置 0x000000A88E715800 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: carve::exception,位于内存位置 0x000000A88E715800 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: BuildingException,位于内存位置 0x000000A88E716580 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: carve::exception,位于内存位置 0x000000A88E715800 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: carve::exception,位于内存位置 0x000000A88E715800 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: BuildingException,位于内存位置 0x000000A88E716580 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: carve::exception,位于内存位置 0x000000A88E715800 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: carve::exception,位于内存位置 0x000000A88E715800 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: carve::exception,位于内存位置 0x000000A88E715800 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: BuildingException,位于内存位置 0x000000A88E716580 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: carve::exception,位于内存位置 0x000000A88E715800 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: carve::exception,位于内存位置 0x000000A88E715800 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: BuildingException,位于内存位置 0x000000A88E716580 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: carve::exception,位于内存位置 0x000000A88E715800 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: carve::exception,位于内存位置 0x000000A88E715800 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: carve::exception,位于内存位置 0x000000A88E715800 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: BuildingException,位于内存位置 0x000000A88E716580 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: carve::exception,位于内存位置 0x000000A88E715800 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: carve::exception,位于内存位置 0x000000A88E715800 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: BuildingException,位于内存位置 0x000000A88E716580 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: carve::exception,位于内存位置 0x000000A88E715800 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: carve::exception,位于内存位置 0x000000A88E715800 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: carve::exception,位于内存位置 0x000000A88E715800 处。
0x00007FFFA2C5A388 处(位于 TeslaManage.exe 中)引发的异常: Microsoft C++ 异常: BuildingException,位于内存位置 0x000000A88E716580 处。
QObject::connect: Cannot connect (null)::timeout() to VCViewerWidget::slotAnimationFrame()
线程 0x4088 已退出,返回值为 0 (0x0)。
“TeslaManage.exe”(Win32): 已卸载“C:\Windows\System32\Windows.StateRepositoryPS.dll”
“TeslaManage.exe”(Win32): 已卸载“C:\Windows\System32\PortableDeviceApi.dll”
“TeslaManage.exe”(Win32): 已卸载“C:\Windows\System32\Windows.Storage.Search.dll”
“TeslaManage.exe”(Win32): 已卸载“C:\Windows\System32\MMDevAPI.dll”
“TeslaManage.exe”(Win32): 已卸载“C:\Windows\System32\provsvc.dll”
“TeslaManage.exe”(Win32): 已卸载“C:\Windows\System32\devobj.dll”
“TeslaManage.exe”(Win32): 已卸载“C:\Windows\System32\wintrust.dll”
“TeslaManage.exe”(Win32): 已卸载“C:\Windows\System32\setupapi.dll”
“TeslaManage.exe”(Win32): 已卸载“C:\Windows\System32\EhStorAPI.dll”
“TeslaManage.exe”(Win32): 已卸载“C:\Windows\System32\InputHost.dll”
“TeslaManage.exe”(Win32): 已卸载“C:\Windows\System32\Windows.UI.dll”
“TeslaManage.exe”(Win32): 已卸载“C:\Windows\System32\PlayToDevice.dll”
“TeslaManage.exe”(Win32): 已卸载“C:\Windows\System32\OneCoreUAPCommonProxyStub.dll”

delete 删除指针的更多相关文章

  1. 不要轻易delete void*指针,这样会隐藏比较多的错误。

    #include<iostream> using namespace std; class Object{ void* data; const int size; const char i ...

  2. free 或delete后指针怎么样了

    free()和delete()只是把指针所指向的内存释放掉,但是并没有把指针本身删除,也没有把指针置为NULL; #include<iostream> using namespace st ...

  3. Oracle库Delete删除千万以上普通堆表数据的方法

    需求:Oracle数据库delete删除普通堆表千万条历史记录. 直接删除的影响: 1.可能由于undo表空间不足从而导致最终删除失败的问题: 2.可能导致undo表空间过度使用,影响到其他用户正常操 ...

  4. mysql delete删除记录数据库空间不减少问题解决方法

    记得在中学时学计算机时老师就告诉我delete删除记录只是给数据库中的记录加一个删除标识了,这样数据库空间并不是减少了,当时没想这么多,昨天发现一个数据库利用delete 删除之后容量没变,后来百度了 ...

  5. 数据库CRUD操作:C:create创建(添加)、R:read读取、U:update:修改、D:delete删除;高级查询

    1.注释语法:--,#2.后缀是.sql的文件是数据库查询文件3.保存查询4.在数据库里面 列有个名字叫字段   行有个名字叫记录5.一条数据即为表的一行 CRUD操作:create 创建(添加)re ...

  6. CRUD操作 create创建 read读取 update修改 delete删除

    1.注释语法:--,#2.后缀是.sql的文件是数据库查询文件3.保存查询4.在数据库里面 列有个名字叫字段 行有个名字叫记录 CRUD操作:create 创建(添加)read 读取update 修改 ...

  7. MYSQL中delete删除多表数据

    MYSQL中delete删除多表数据 DELETE删除多表数据,怎样才能同时删除多个关联表的数据呢?这里做了深入的解释: 1. delete from t1 where 条件 2.delete t1 ...

  8. 无责任Windows Azure SDK .NET开发入门篇三[使用Azure AD 管理用户信息--3.5 Delete删除用户]

    3.5 Delete删除用户 删除也是通过ObjectID获得对象进行删除 [Authorize] public async Task<ActionResult> Delete(strin ...

  9. MYSQL中delete删除多表数据与删除关联数据

    在mysql中删除数据方法有很多种,最常用的是使用delete来删除记录,下面我来介绍delete删除单条记 录与删除多表关联数据的一些简单实例. 1.delete from t1 where 条件 ...

随机推荐

  1. Notes for <<Thinking In Java>>

    String   Thus, when you create a toString( ) method, if the operations are simple ones that the comp ...

  2. G1垃圾收集器深度理论讲解【纯理论】

    在上三次中对于G1官方解读之后,接下来还得回到G1的理论化知识的了解阶段..确实G1是概念比较复杂,而且它也是未来JDK的垃圾回收的主流,所以花再多的时间在这上面也是值得的,先来回顾一下上次过过的理论 ...

  3. GIS 基础知识简介

    前言 前一段时间,在公司进行了分析 GIS 基础信息的介绍.之所以会有这个介绍以及为什么是我?这个个中缘由说下. 公司不是一个GIS方面的公司,但是由于业务的需要,经常需要用到地图(要和地图打交道), ...

  4. Android --其他测试点

    全球化测试: 语言方向,参考:https://developer.android.google.cn/guide/topics/resources/pseudolocales. Spot locali ...

  5. 15 webpack中使用url-loader处理字体文件

    引用字体图标,bootstrap有提供字体图标 1.安装bootstrap cnpm i bootstrap -S 2.导入bootstrap //注意:如果要通过路径的形式,去引入node_modu ...

  6. P2P system: FastTrack and BitTorrent

    FastTrack FastTrack来源于Gnutella,是Gnutella 和 Napster的杂交体 有些node承担了更重要的责任,这些nodes称为supernodes,因为这些改进,它比 ...

  7. git生成ssh公私钥

    ssh-keygen -t rsa -C "youremail@example.com" 生成好的密钥文件在%userprofile%/.ssh/目录,.pub文件为公钥,然后添加 ...

  8. Python json常用操作

    json模块 (字符串操作) json.dumps() :对数据进行编码 json.loads() :对数据进行解码 json模块(文件操作) # 写入 JSON 数据 with open('data ...

  9. /etc/crontab

  10. go安装与goland破解永久版

    一.go安装 1.建议去go语言中文网下载,网址:https://studygolang.com/dl ,下图是下载页面及包介绍 2.Windows版安装 3.在cmd命令行窗口输入“go versi ...