R.12: Immediately give the result of an explicit resource allocation to a manager object
R.12:立即将显式分配的资源交给资源管理对象
Reason(原因)
If you don't, an exception or a return may lead to a leak.
如果不这样做,发生异常或者返回操作时可能会引发泄露。
Example, bad(反面示例)
The allocation of buf may fail and leak the file handle.
如果分配buffer失败(抛出异常,译者注)就会导致文件句柄的泄露。
Example(示例)
The use of the file handle (in ifstream) is simple, efficient, and safe.
(使用ifstream管理)文件句柄的用法简单、高效而且安全。
Enforcement(实施建议)
- Flag explicit allocations used to initialize pointers (problem: how many direct resource allocations can we recognize?)
- 标记使用显式分配的资源初始化指针的情况(问题是:我们能够识别出多少直接分配资源的情况?)
原文链接:
觉得本文有帮助?欢迎点赞并分享给更多的人。
阅读更多更新文章,请关注微信公众号【面向对象思考】
















