xyz 的个人资料为而不争日志列表 工具 帮助
2009/7/20

new有四种用法你知道吗?

题记:
“回字有四种写法你知道吗?”——《孔乙己》,鲁迅
 
   int * p1 = new myclass;//正常用法。失败会throw出去
   int * p2 = new (nothrow) int;//非throw用法,失败返回NULL,而不会throw
   myclass * p3 = (myclass*) operator new (sizeof(myclass));//分配空间不执行构造函数,几乎相当于malloc。差异在于某些编译器,调试器对于内存的初始化方式。
   new (p3) myclass;   //在指定空间(已分配)执行构造函数。

等价操作就不说了。
 
写出来是提醒自己,尚未弄清第四种和显示调用构造函数p3->myclass::myclass()有什么区别。
 
当艺术精巧细致而囚于象牙塔中鲜有人迹,便成为凡夫俗子们无知的笑柄。
孔乙己是个悲剧人物,但是错误并非如同教科书所说是他的迂腐,而是源于社会的堕落。
 
java,c#,甚至.net的编写者们已经满天都是,c++,c甚至asm的编写者们是不是应该不再自称程序员?
 
随便写写……
 

评论 (1)

请稍候...
很抱歉,您输入的评论太长。请缩短您的评论。
您没有输入任何内容,请重试。
很抱歉,我们当前无法添加您的评论。请稍后重试。
若要添加评论,需要您的家长授予您相应权限。请求权限
您的家长禁用了评论功能。
很抱歉,我们当前无法删除您的评论。请稍后重试。
您已超过了一天之内允许提供的评论数上限。请在 24 小时后重试。
因为我们的系统表明您可能在向其他用户提供垃圾评论,您的帐户已禁用了评论功能。如果您认为我们错误地禁用了您的帐户,请联系 Windows Live 支持部门
完成下面的安全检查,您提供评论的过程才能完成。
您在安全检查中键入的字符必须与图片或音频中的字符一致。

若要添加评论,请使用您的 Windows Live ID 登录(如果您使用过 Hotmail、Messenger 或 Xbox LIVE,您就拥有 Windows Live ID)。登录


还没有 Windows Live ID 吗?请注册

要看孔乙己掌握那四种写法,究竟是因为自己还是因为别人。
7 月 20 日

引用通告

此日志的引用通告 URL 是:
http://ply-xyz.spaces.live.com/blog/cns!12E36C1BED3A8855!319.trak
引用此项的网络日志