如何理解和使用RAII

时间:2024-10-13 17:14:06

1、创建一个资源管理的类,其成员变量为std::function<void()>亿姣灵秀类型的变量,主要是用于存储释放资源的函数指针

如何理解和使用RAII

2、动态创建整型类型的指针对象,然后调用ResourceManage类,其参数为一个匿荏半吨蛸名函数,函数的功能就是释放整型指针对象

如何理解和使用RAII

3、调试运行结果如下,整型指针对象,被ResourceManage对象释放了

如何理解和使用RAII

4、创建一个写入文件的流控制符,然后调用ResourceManage类,其参数为一个匿名函数,函数的功能就是关闭流控制符

如何理解和使用RAII

5、运行之后发现,ResourceManage对象释放后,会自动去调用关闭流控制符的操作

如何理解和使用RAII

6、另外智能指针也是RAII的一种表现,例如std::shared_ptr

如何理解和使用RAII

7、运行调试之后,共享智能指针如果发现其引用次数为0的话,就会释放其持有的资源

如何理解和使用RAII
© 手抄报圈