Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
可能重复: 为什么使用“新”会导致内存泄漏?
我想知道是否,
Foo bar = *(new Foo());
可以这样做,还是我在浪费内存,因为在将值分配给bar.
bar
这是一个即时内存泄漏,因为您在堆上丢失了对它的引用。
不过我不得不问,当您可以简单地调用堆栈上的构造函数时,为什么要为自己添加工作。
这与您预期的不同:
您在永远不会被破坏的堆上创建临时=内存泄漏
然后,您在堆栈上创建临时对象的 COPY。
所以这种方法没有给你任何东西..也许你需要智能指针?