And*_* N. 4 c++ bad-alloc c++11
是否存在与内存相关的更频繁的错误抛出bad_alloc?我知道这意味着内存分配失败了,但在代码中导致这种情况的最常见错误是什么?
编辑:其他评论者指出了一些有趣的场景.为了完整起见,我将它们添加到我的回复中.
我的理解是,只要操作符new和new []无法将内存分配给对象或变量,就会抛出bad_alloc.如果你已经新建了一堆对象而忘记在它们超出范围之前删除它们(例如,你的代码像疯了一样泄漏),就会发生这种情况.
可能有几个可用的内存块,但这些内存块都不够大.
如果传递负值作为其参数,则抛出bad_alloc.
| 归档时间: |
|
| 查看次数: |
248 次 |
| 最近记录: |