c++ file* 句柄泄漏_C++核心准则?讨论:持有没有被句柄管理的资源时切勿抛出异常...

Discussion: Never throw while holding a resource not owned by a handle讨论:持有没有被句柄管理的资源时切勿抛出异常Reason(原因)That would be a leak.这会引发资源泄露。Example(示例)void f(int i){ FILE* f = fopen("a file", "r"); ifst...
摘要由CSDN通过智能技术生成
cb1ae1ef87a1461d7f102a3a00915cd9.png

Discussion: Never throw while holding a resource not owned by a handle

讨论:持有没有被句柄管理的资源时切勿抛出异常

Reason(原因)

That would be a leak.

这会引发资源泄露。

3ffc3ad73fef15b2f335c2c310db0b6c.png

Example(示例)

void f(int i){    FILE* f = fopen("a file", "r");    ifstream is { "another file" };    // ...    if (i == 0) return;    // ...    fclose(f);}

If i == 0 the file handle for a file is leaked. On the other hand, the ifstream for another file wil

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值