C++学习 boost学习之checked_delete

来源:互联网 发布:海淘iphone知乎 编辑:程序博客网 时间:2024/06/06 07:06

Boost中文手册下载:http://download.csdn.net/detail/skdkjxy/8723045

用法:

删除一个动态分配的对象时,必须调用它的析构函数。如果这个类型是不完整的,即只有声明没有定义,那么析构函数可能会没被调用。这是一种潜在的危险状态,所以应该避免它。对于类模板及函数模板,风险会更大,因为无法预先知道会使用什么类型。使用checked_deletechecked_array_delete, 可以解决这个删除不完整类型的问题。它没有运行期的额外开销,只是直接调用delete, 因此说checked_delete 带来的安全性实际上是免费的。

如果你需要在调用delete时确保类型是完整的,就使用checked_delete



0 0
原创粉丝点击