RAII
什么是RAII
RAII,Resource Acquisition Is Initialization,资源获取即初始化,是C++中很重要的编程思想,它将资源的声明周期和对象的生命周期绑定到一起,在构造函数请求资源,在析构函数释放资源并且绝不抛出异常。C++中的STL基本都遵循RAII规范,例如vector, string, lock_guard, unique_lock, shared_ptr, unique_ptr等。
ScopeExit
ScopeExit可以在绑定多行代码,在程序离开ScopeExit所在的作用域时,会执行ScopeExit绑定的代码。一般用于绑定资源的清理代码。
例如
1 | |
没有ScopeExit时,我们需要多次手动释放资源,但有了ScopeExit后
1 | |
我们只需要用ScopeExit绑定一次资源的清理代码即可。
RAII
https://guts.homes/2025/06/13/cpp-RAII/