Aurilia厄瑞莉娅 (@Aurilia)📚【C++ 从入门到入睡】RAII与智能指针 中发帖

📚 其他c++姊妹帖 
    ❀ 命名空间
    ❀ const与类型转换
    ❀ 指针与数组
    ❀ 内存模型与字符串底层
    ❀ 引用与移动语义
    ✿ RAII与智能指针


C++没有垃圾自动回收机制,程序员需要时刻注意资源的释放。
除了忘记释放,资源还可能会因为错误终止(指非强制终止)导致资源泄露。
而对象会在其生命周期结束和错误终止时(指非强制终止)自动调用析构函数。
基于这样的特性,Bjarne提出了RAII"资源获取即初始化"的思想。

◢ RAII

构造中获得,析构中释放


获得:资源在对象构造时传入,或者直接在对象的构造中申请资源。
释放:将资源的释放写在析构中。

通过RAII可以确保资源的正确释放。
❖ 资源独占要求
RAII将资源和对象生命周期绑定。
如果允许赋值或复制,就会出现一个资源绑定到多个生命周期上的情况...