【发布时间】:2014-01-17 09:21:45
【问题描述】:
我刚从我朋友的采访中听到这个消息。有人问他动态创建对象和定期创建对象的区别和要点是什么。
例子:
Obj *test = new test();
对
Obj test;
动态创建对象与创建对象的区别和意义何在?我知道一个区别可能是动态创建的变量在堆上,而另一个在堆栈上,但还有更大的区别吗?
【问题讨论】:
-
首先你可以释放动态创建的。
-
new test();// on heap和Obj test; //on stack -
为什么人们会因为“太宽泛”而关闭它。一点都不宽泛。当然,这是一个糟糕的问题——因为 OP 没有尝试研究这个问题。但它不是“太宽泛”。
-
Stroustroup 刚刚哭了。对不起。至少阅读一本关于 C/C++ 的书。甚至是互联网上的一篇初学者 C/C++ 文章。 @Moo-Juice 我一直认为 stackoverflow 的存在是为了帮助人们,而不是为人们做任何事情。这个问题可以通过阅读书籍/互联网文章来回答。它不应该在这里。这不是全球性问题,也不是特殊情况。我想,我们在这里所能提供的只是建议一些好书来阅读。
-
我不同意到目前为止所有的票数。如果有人能找到重复的问题(我只能找到 similar 问题),可以为此关闭它,但这个问题既不太宽泛也不太离题。
标签: c++ object pointers dynamic