2022
05-27
05-27
C++11 智能指针的具体使用
目录智能指针的原理RAII智能指针的原理auto_ptr1.auto_ptr的使用及问题unique_ptrshared_ptrshared_ptr的循环引用智能指针的原理RAIIRAII(ResourceAcquisitionIsInitialization)是一种利用对象生命周期来控制程序资源(如内存、文件句柄、网络连接、互斥量等等)的简单技术。在对象构造时获取资源,接着控制对资源的访问使之在对象的生命周期内始终保持有效,最后在对象析构的时候释放资源。借此,我们实际上把管理一份资源...
继续阅读 >
目录0.前言1.unique_ptr2.auto_ptr3.shared_ptr 3.1简介3.2通过辅助类模拟实现shared_ptr4.weak_ptr4.1简介4.2用法4.3作用5.如何选择智能指针0.前言C++标准模板库STL(StandardTemplateLibrary)一共给我们提供了四种智能指针:auto_ptr、unique_ptr、shared_ptr和weak_ptr,其中auto_ptr是C++98提出的,C++11已将其摒弃,并提出了unique_ptr替代auto_ptr。虽然auto_ptr已被摒弃,但在实际项目中仍可...