Advertisement

C++入坑系列(八)之分析new运算符定位

阅读量:

前言

众所周知,C语言中通过malloc函数free函数 实现了在堆空间 内对动态内存 的分配与释放操作。而在C++语言中,推荐采用new运算符delete运算符 来完成对堆空间 中的动态内存 进行相应的分配与释放。那么是否可以借助new运算符,在特定位置开辟出动态内存呢?答案是肯定的,以下将对这一特性进行简要说明。若文中存在疏漏或不足之处,敬请各位读者批评指正,感谢支持!

定位new运算符的作用

为实现更清晰的区分,文中将日常应用最为频繁的new运算符定义为普通new运算符,而将后续将要阐述的类型则命名为定位new运算符。该运算符的功能在于明确动态内存分配的具体位置,并非仅限于堆空间的操作。

定位new运算符的语法

在运用定位new运算符的过程中,绝大多数操作与常规new运算符保持相同,其区别主要体现在需要明确指定动态内存的存储位置,同时,不允许通过delete运算符对所分配的内存进行释放(尤其当该内存未处于堆空间中时),这是因为delete运算符仅适用于对堆空间内的内存进行释放操作。
程序示例如下:

复制代码
    #include <iostream>
    #include <new>
    using na

全部评论 (0)

还没有任何评论哟~