【发布时间】:2009-08-13 07:03:35
【问题描述】:
很久以前我找到了一篇文章(我在 ATM 上找不到),其中说明了 C++ 中的 new 关键字不好的原因。我不记得所有的原因,但我记得最清楚的两个是你必须将 new 与 delete 匹配,new[] 与 delete[] 匹配,并且你不能像 malloc 那样将#define 与 new 一起使用。
我正在设计一种语言,所以我想问一下您将如何更改 C++ 语言,使新语言更加友好。随意陈述新文章和文章的问题。我希望我能找到文章链接,但我记得它很长,是由 (IIRC) 一所知名学校的教授写的。
【问题讨论】:
-
malloc()显然也很糟糕,因为您必须将其与free()匹配 -
我不会让#define-ability 影响任何关于语法的决定——这就是龙...
-
如果您无法就这种语言设计决策的利弊表达自己的看法,是什么让您认为您已准备好改进它?
-
这是您想的文章吗? c2.com/cgi/wiki?NewConsideredHarmful
-
或者这可能是有问题的文章:scs.stanford.edu/~dm/home/papers/c++-new.html
标签: c++ language-design new-operator keyword