社区
C语言
帖子详情
operator new 和new的区别?
SatanLi1982
2003-02-16 01:17:47
operator new 和new的区别?还有operator delete和delete的区别?
...全文
139
5
打赏
收藏
operator new 和new的区别?
operator new 和new的区别?还有operator delete和delete的区别?
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
allen_zhaozhencn
2003-02-16
打赏
举报
回复
2
operator new是一个操作符,当用户需要分配内存空间时(仅分配内存空间),可以使用它。它将返回一个void* 类型的指针。
(我们通常可以重载该操作)
new : 它是C++ 提供在堆中生成对象的关键字,当用户调用new来生成一个对象时,C++编译器会先调用该类的 operator new 来分配内存空间, 然后调用类的构造函数来初始化类的成员变量。(new 的默认行为不能改变。)
至于operator delete和 delete 则与上面的讲述刚好相反。
zheyeah
2003-02-16
打赏
举报
回复
同样 还是去看看<<more Effective C++>>ITEM M8:理解各种不同含义的NEW和DELETE,又全文字又清楚。
chinajiji
2003-02-16
打赏
举报
回复
new是一个操作,由:
operator new() + constructor组成;
operator new 是一个可以重载的运算符.
delete 由:
deconstuctor + operator delete()组成;
operator delete()同样是一个可以重载的运算符.
efstudent
2003-02-16
打赏
举报
回复
有区别吗?只是叫法不一样,在重载new时,一般叫做operator new ,在使用new时,则直接叫new。
allen1981813
2003-02-16
打赏
举报
回复
new 是个运算符号,不是函数,
既然是运算符号,那就是说可以overload.
[C++]
operator
new
与
new
operator
的
区别
[百面]
C++中的
operator
new
与
new
operator
,看上去挺像的两姐妹,却有天壤之别。
operator
new
(1) 只分配所要求的空间,不调用相关对象的构造函数。当无法满足所要求分配的空间时,则 ->如果有
new
_handler,则调用
new
_handler,否则 ->如果没要求不抛出异常(以nothrow参数表达),则执行b
new
operator
和
operator
new
的
区别
new
operator
和
operator
new
的
区别
operator
new
和
new
operator
的
区别
(More Effective C++_8(运算符))
一、分析
区别
首先,我们先对
new
和delete表达式有深入了解,先看下面的语句string *sp=
new
string("hello");上述代码,实际上发生了三个步骤,第一步,调用名为
operator
new
的标准库函数,分配足够大的原始化的未类型化的内存,来保存指定类型的一个对象;第二步,运行该类型的一个构造函数,用于初始化构造对象;最后,返回指向新分配并设定了处置的指针;上述,代码中的ne
new
、
operator
new
和 placement
new
区别
(1)
new
:不能被重载,其行为总是一致的。它先调用
operator
new
分配内存,然后调用构造函数初始化那段内存。
new
操作符的执行过程: 1. 调用
operator
new
分配内存 ; 2. 调用构造函数生成类对象; 3. 返回相应指针。 (2)
operator
new
:要实现不同的内存分配行为,应该重载
operator
new
,而不是
new
。
operator
C++中的
operator
new
与
new
operator
区别
C++中的
operator
new
与
new
operator
,看上去挺像的两姐妹,却有天壤之别。
operator
new
(1) 只分配所要求的空间,不调用相关对象的构造函数。当无法满足所要求分配的空间时,则 ->如果有
new
_handler,则调用
new
_handler,否则 ->如果没要求不抛出异常(以nothrow参数表达),则执行b
C语言
70,040
社区成员
243,237
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章