一、运算符new

1. 使用new动态分配对象

  • 在自由空间分配的内存是无名的,故new无法为其分配的对象命名,而是返回一个指向该对象的指针
  • int *pi = new int;  //pi指向一个动态分配的、未初始化的无名对象
  • 表达式“new int”:①在自由空间构造一个 int 型对象;②返回指向该对象的指针

2. 使用new动态分配并初始化对象

  • int *pi1 = new int;  //默认初始化,*pi1的值未定义
  • int *pi2 = new int();  //对动态分配的对象进行值初始化,*pi2的值为0
  • int *pi3 = new int(24)  //直接初始化,pi3指向的对象的值为24
  • int *pi4 = new int{24}  //同上

  注:对于定义了自己的构造函数的类类型来说,值初始化和默认初始化的效果是一样的;但对于内置类型来说,值初始化的内置类型对象有着良好定义的值,而默认初始化的对象的值是未定义的。

二、运算符delete

1. 传递给delete的指针必须指向动态分配的内存,或者是一个空指针

2. const对象是可以销毁的

3. 空悬指针:当delete一个指针后,该指针就变为空悬指针了

最新文章

  1. [读书笔记]C#学习笔记一: .Net Framwork
  2. MFC编程入门之十一(对话框:模态对话框及其弹出过程)
  3. Hadoop2.2.0 第一步完成MapReduce wordcount计算文本数量
  4. ab测试大并发错误
  5. HighChart 实现从后台取数据来实时更新柱状和折线组图
  6. money 和 smallmoney
  7. MySql 环境配置
  8. Swift - 自定义UIActivity分享
  9. 一个int类型引发的bug
  10. python 深浅拷贝
  11. java调取数据库
  12. [JavaScript] requireJS基本使用
  13. Scala--控制结构和函数
  14. SQLAlchemy+Flask-RESTful使用(二)
  15. Java 问题定位工具 -- jps
  16. 占满屏幕的宽高,当把textarea换成其他标签的时候,怎么才能编辑?
  17. django的母板和继承
  18. .NetCore源码阅读笔记系列之Security (二) 自定义认证实践
  19. angular学习笔记(三十)-指令(8)-scope
  20. 5.用 CSS 创作一个立体滑动 toggle 交互控件

热门文章

  1. 将图片写入二进制文件,再从二进制文件还原图片(c++)
  2. Plugin 'InnoDB' registration as a STORAGE ENGINE failed
  3. ;(function($,window,document,undefined){})(jQuery,window,document)
  4. 关于Quartz 2D绘图的简单使用
  5. python基础 - 字符串与列表的基本操作方法
  6. day04-decorator
  7. VXLAN简介(摘抄)
  8. Lingo基本操作
  9. python2.7入门---CGI编程&文件上传&文件下载
  10. [原创]用python实现系统状态监测和故障转移