面试时碰到这么一道面试题,面试官说请谈一谈RAII。
其实就是Resouce Acquisition Is Initialization,资源获取即初始化。
抓住两个点。1,获取资源后立即放进管理对象。
2,管理对象运用析构函数确保资源被释放。
如果用自己的话说:这是c++管理资源,避免内存泄漏的一种方式。典型的应用是智能指针,创建对象的时候使用智能指针接管,离开其作用域自动释放资源。
如果想回答得艺术一点,可以引用自己看过的书。Effective C++ 里面的条款13 use objects to manage resouces(用对象管理资源)这一节,正是谈论的这个问题。