weak_ptr

特立独行的猫a15 天前
开发语言·c++·智能指针·弱指针·weak_ptr
c++弱引用指针std::weak_ptr作用详解在C++现代编程中,智能指针已成为管理动态内存的基石。然而,许多开发者在接触std::shared_ptr和std::weak_ptr时,常常对后者的存在意义感到困惑。特别是在阅读大型项目源码时,频繁出现的weak_ptr用法更让人疑惑:既然已经有了强大的shared_ptr,为何还需要这种"弱不禁风"的指针?本文将从设计哲学、实现原理到实际应用场景,全面解析std::weak_ptr的奥秘,并通过丰富的代码示例展示其在实际工程中的价值。
YouEmbedded1 个月前
开发语言·c++·unique_ptr·shared_ptr·auto_ptr·weak_ptr
解码智能指针C++ 中使用原始指针(raw pointer)管理动态资源(堆内存、文件描述符、互斥锁、数据库连接等)时,必须手动调用释放逻辑(如delete、close等)。但以下场景会导致资源泄漏:
shylyly_8 个月前
开发语言·c++·内存泄漏·智能指针·weak_ptr·rall·share_ptr
智能指针RAIIRAll是一种利用对象生命周期来控制程序资源(如内存、文件句柄、网络连接、互斥量等等)的简单技术。在对象构造时获取资源,接着控制对资源的访问使之在对象的生命周期内始终保持有效,最后在 对象析构的时候释放资源。借此,我们实际上把管理一份资源的责任托管给了一个对象。这种做 法有两大好处: · 不需要显式地释放资源。 · 采用这种方式,对象所需的资源在其生命期内始终保持有效。
梦想患者1 年前
开发语言·c++·智能指针·unique_ptr·shared_ptr·weak_ptr
浅谈智能指针工作原理(std::shared_ptr、std::unique_ptr、std::weak_ptr、std::auto_ptr)智能指针,老有人会问关于对它的认识。为了很好的回答这个问题。对智能指针 std::shared_ptr、std::unique_ptr、std::weak_ptr和 std::auto_ptr进行分析。在此做一个总结,对于智能指针的分析告一段落。
我是有底线的