如何理解和使用RAII

C++

方式/步调

  1. 1

    建立一个资本办理的类,其当作员变量为std::function类型的变量,本家儿如果用于存储释放资本的函数指针

    060828381f30e924fe106ee042086e061c95f7af.jpg
  2. 2

    动态建立整型类型的指针对象,然后挪用ResourceManage类,其参数为一个匿名函数,函数的功能就是释放整型指针对象

    faf2b2119313b07e5b0ea2d902d7912396dd8cb4.jpg
  3. 3

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

    1e30e924b899a90104c6a9e713950a7b0308f574.jpg
  4. 4

    建立一个写入文件的流节制符,然后挪用ResourceManage类,其参数为一个匿名函数,函数的功能就是封闭流节制符

    e7cd7b899e510fb31f778a46d733c895d0430cf0.jpg
  5. 5

    运行之后发现,ResourceManage对象释放后,会主动去挪用封闭流节制符的操作

    dc54564e9258d10963005b63df58ccbf6d814d04.jpg
  6. 6

    别的智能指针也是RAII的一种表示,例如std::shared_ptr

    80cb39dbb6fd5266d675c1c5a518972bd5073680.jpg
  7. 7

    运行调试之后,共享智能指针若是发现其引用次数为0的话,就会释放其持有的资本

    42a98226cffc1e17a1ad71e04490f603728de9d5.jpg
  • 发表于 2019-08-07 00:17
  • 阅读 ( 1119 )
  • 分类:其他类型

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
联系我们:uytrv@hotmail.com 问答工具