何时使用 *(new Foo)
When to use *(new Foo)
所以我读到了类似
的问题
Foo bar = *(new Foo());
因为在 bar
超出范围并从堆栈中删除后,无法从堆中清除 Foo()
。有实际用途吗?
Foo& foo = *(new Foo);
delete &foo;
但是不要那样做。它会让未来的维护者感到困惑,而且没有充分的理由这样做。使用指针。
所以我读到了类似
的问题Foo bar = *(new Foo());
因为在 bar
超出范围并从堆栈中删除后,无法从堆中清除 Foo()
。有实际用途吗?
Foo& foo = *(new Foo);
delete &foo;
但是不要那样做。它会让未来的维护者感到困惑,而且没有充分的理由这样做。使用指针。