怎样使用定位new

2025-10-27 18:10:50

1、要使用定位 new,必须包含头文件 <new>。不过,现在通常我们不必特意去包含它,因为头文件<iostream>中已经包括了,我们只需要包含<iostream>即可。

怎样使用定位new

2、在这里,为了更加有效地说明定位 new 的使用方法,我们再定义两个自定义类:MyInt 和 MyChar。

怎样使用定位new

1、下面,我们通过分析一个具体的示例,来一步一步地教大家怎样使用定位new。首先,分配供定位 new 使用的内存块。

怎样使用定位new

2、在分配的内存块中调用定位 new,构造两个 MyInt 对象,并为它们的数据成员赋值。在这儿请注意,之前我们分配的是 8 字节的内存,而我们的一个 MyInt 对象只需要 4 个字节,故可以构造两个。

对象构造以后,我们便可以使用创建的对象。在这里,我们输出第一个对象的数据成员值。

怎样使用定位new

3、当对象使用完不再需要时,我们必须调用它的析构函数来销毁它。

怎样使用定位new

4、对象销毁以后,我们接下来可以继续使用分配的内存块再次构造其他类型的对象。比如说,我们再在 buffer 中构造数个 MyChar 对象,并给它们的数据成员赋值。

对象构造完成后,我们输出第 4 个对象的数据成员值。

怎样使用定位new

5、然后,我们再次销毁这些对象。

怎样使用定位new

6、现在,我们的工作已经完成,不再需要之前分配的内存块,因此可将它释放掉。

怎样使用定位new

7、下面是上述代码的运行截图。

怎样使用定位new

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢