一、野指针

定义指针变量时最好初始化为NULL;

内存回收后,指针也用完了,这时候也需要及时将指针置为NULL;

指针就像野狗一样,为了防止它乱指,除了在使用期间,别的时候都需要置为NULL。这样它就老实了。

二、栈、堆和静态区

我们可以简单把内存分为三个部分:静态区、栈、堆

静态区:保存自动全局变量和static变量(static全局和局部变量)。静态区的内容伴随整个程序的生命周期。在编译时分配;

栈:保存局部变量,只在函数的范围内存在。当函数运行结束时,这些内容也会自动销毁;特点时效率高,但空间大小有限;

堆:new/delete分配和释放,在没有释放前一直存在,直到程序结束。特点是使用灵活,空间比较大,但容易出错;

最新文章

  1. Ubuntu开发笔记
  2. 31 GroupSock(AddressString)——live555源码阅读(四)网络
  3. c语言二叉树
  4. bootstrap - table
  5. PHP中CURL方法curl_setopt()函数的一些参数 (转)
  6. Android开发10.2:UI组件AutoCompleteTextView(自动完成文本框)
  7. vue 学习中 版本、问题集锦
  8. 程序员利器Tmux使用手册
  9. 选择性搜索(SS)算法
  10. 【vue】vue中ref用法
  11. shopNC 拓扑图
  12. js操作数组元素
  13. php file_get_contents fopen 连接远程文件
  14. FactoryMethod工厂方法模式升级成AbstractFactory抽象工厂模式
  15. [Python] Scipy and Numpy(1)
  16. zend opcache的最佳设置
  17. 【java】java中替换中括号[ ]操作
  18. 2016.6.18主窗体、子窗体InitializeComponent()事件、Load事件发生顺序以及SeleChanged事件的发生
  19. hadoop再次集群搭建(3)-如何选择相应的hadoop版本
  20. 【转】Java重构-策略模式、状态模式、卫语句

热门文章

  1. video兼容ie,ckplayer网页播放器
  2. centos7使用docker制作tomcat本地镜像
  3. DOM的一些小总结
  4. 设计模式01 创建型模式 - 原型模式(Protype Pattern)
  5. Vue.js项目的开发环境搭建与运行
  6. robot framework 如何自己写模块下的方法或者库
  7. C++查找指定路径下的特定类型的文件
  8. c语言中“#if 0 / #if 1 ... #endif”的作用
  9. Linux centosVMware Linux集群架构LVS DR模式搭建、keepalived + LVS
  10. CPD