【发布时间】:2011-12-08 10:37:13
【问题描述】:
可能重复:
Does C++ support 'finally' blocks? (And what's this 'RAII' I keep hearing about?)
C++11 是否支持 try/catch/finally 构造?
我问是因为我找不到任何有关它的信息。
谢谢。
【问题讨论】:
-
就其价值而言,在我看来,RAII 的问题在于它强烈限制了您的类层次结构设计。在某些情况下,您想整理但自然没有可用的课程来强制整理。
-
@David Heffernan,幸运的是,有了 lambda,使用范围保护比以往任何时候都容易。 :)
-
正如其他人所说,C++11不直接支持finally关键字。但是,可以无缝地实施和使用它。在这里查看我的答案:stackoverflow.com/a/38701485/566849
-
查看我的 try-finally 语句模仿版本:stackoverflow.com/a/47574378/5447906