3.5.10 构造函数与操作符new和new[]

2013-10-07 15:32:31 · 作者: · 浏览: 77

3.5.10   构造函数与操作符new和new[]

当使用动态方式为一个对象分配存储空间时,C++(www.cppentry.com)操作符new和new[]比C函数malloc和calloc做得更好。因为操作符new和new[]在分配存储空间的同时,还会调用相应的构造函数,而malloc和calloc无法完成这个任务。

例3-33

 
 
本例中,对象elvis用new创建,因此默认构造函数对单一Emp单元进行了初始化。对象lotsOfEmps用new[]创建,因此转型构造函数对其拥有的1 000个Emp单元进行了初始化;对象cher用new创建,因此默认构造函数对Emp单元进行了初始化;而foo用malloc创建而不是C++(www.cppentry.com)操作符new或new[],因此它没有被初始化。