标题:重载new里的问题
取消只看楼主
lyj23
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:168
专家分:140
注 册:2010-10-31
结帖率:86.21%
已结贴  问题点数:10 回复次数:2 
重载new里的问题
我在书上看到一个new的重载
void* operator new(size_t)
{cout<<"Alloc……"<<endl;
throw 47;}

这个重载为什么会可以?如果调用这个重载,new本身的功能不就没了?
还有这个怎么调用?第一个参数是无符号整型,那什么时候会调用重载函数,什么时候不掉用?

跪求高手!光临本贴
搜索更多相关主题的帖子: void 
2011-05-28 10:42
lyj23
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:168
专家分:140
注 册:2010-10-31
得分:0 
额,书上好像说过重载运算符不能改变运算符本来的……

我是说这个new重载以后,调用它,那比如new int a;那就算不抛出异常

a的内存会不会被创建呢?
里面不写一遍::operator new(a)  //类似delete的写法
也可以吗?
2011-05-28 15:05
lyj23
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:168
专家分:140
注 册:2010-10-31
得分:0 
高手COME ON !跪求高手
2011-05-29 17:16



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-341213-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.660101 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved