为什么我可以用 C++ 在堆栈上创建一个对象,但我不能用其他编程语言(如 Java 或 C#)做到这一点?
最佳答案
原因很简单:在 C++ 中,您必须自己管理所有这些内存分配。对象在哪里分配,什么时候释放。
在 Java 和 C#(实际上是 .NET)中,这要容易得多。对象在堆上分配并在不再需要时被垃圾收集。这消除了一系列问题(内存泄漏和访问释放的对象)
关于java - 为什么Java和C#不允许在栈上创建对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28208247/