您的位置:首页 > 其它

使用指针的常见问题

2013-12-13 11:58 260 查看
# 内存泄漏:一块堆内存没有被释放,也没办法被本进程和其他进程继续使用。

            栈区内存可以由操作系统内核管理和回收,堆区内存,必须有应用程序进行 回收delete

# 使用未初始化指针(如空指针,无效指针)  

  int k = 8; int*p = &k  取k变量内存地址

  int *p = new int; *p=100;  

# 悬挂指针

  double *p1 = new double(2.4);  double *p2 = p1;                //new double(2.4) 返回的是一个指向对象的指针

  delete p2;         *p1 = 100.4;                                //对已经销毁的对象内存空间进行占用,悬挂指针

# 多次释放  重复对2个指向同一个对象的进行delete操作,会报  double free 错误。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: