一、定义
RAII,Resouce Acquisition Is Initialization,翻译成中文的意思就是资源获取即初始化,RAII主要用于保证申请的资源得到正确的释放。最初由
Bjarne Stroustrup提出,为了保证资源能够正确的得到释放,RAII原则是所有的资源都必须有管理对象,而资源的申请操作在管理对象的构造函数中进行,而资源的回收则在管理对象的析构函数中进行。由于C++标准保证所有对象在离开作用域时,析构函数都会被调用,因此即使在资源的使用过程中发生了异常,也能够保证资源得到释放。
二、标准C++中RAII