如果我可以像这样在 C++ 中创建一个 QString:
QString s = "my string"; // or,
QString *s = new QString("my string");
那么,我什么时候需要使用malloc
?
最佳答案
您永远不需要在 C++ 中使用 malloc
。
好吧,既然我已经说过从不,一个异常(exception)是当您使用 C 代码时由于某种原因或其他原因取得您提供的一 block 内存的所有权,然后调用 free
在指向该内存的指针上释放它。
我以前从未见过这种情况(我通常不使用 C 库,我不知道这种情况有多普遍),这只是我能想到的人为情况,我可以想到在哪里使用 malloc
将 不是 是可选的,因为在 new
创建的一段内存上调用 free
是未定义的行为。
关于c++ - 什么时候需要在 C++ 中使用 malloc?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8440530/