
C++
文章平均质量分 87
卖猪肉的痴汉
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C++智能指针weak_ptr
weak_ptr是一种“弱引用”智能指针,它不会增加所管理对象的引用计数。它的主要作用是用来观察或访问由shared_ptr管理的资源,而不拥有该资源的所有权。由于不拥有所有权,weak_ptr指向的对象可能在某些情况下已经被销毁,因此在使用时需要特别小心。用途weak_ptr主要用于观察资源或打破shared_ptr的循环引用。关键方法lock()获取shared_ptrexpired()检查有效性。典型场景:对象间存在潜在循环引用(如链表、树结构)时。原创 2025-03-07 18:58:05 · 1426 阅读 · 0 评论 -
C++智能指针unique_ptr
unique_ptr是现代 C++ 中管理动态内存的利器,它通过独占所有权和自动释放机制,简化了资源管理,同时保持高效和安全。无论是实现工厂模式、管理容器中的对象,还是处理动态数组,unique_ptr都能胜任。掌握它的核心操作(如releaseresetswap)和注意事项(如std::move的使用),能让您在编写代码时更加得心应手。原创 2025-03-08 10:09:24 · 1316 阅读 · 0 评论 -
C++智能指针shared_ptr
shared_ptr是C++标准库(<memory>头文件)中的一种智能指针,用于管理动态分配的内存。它通过引用计数机制,跟踪有多少个shared_ptr实例共享同一块内存。当最后一个shared_ptr被销毁或重置时,引用计数变为0,内存自动释放。这种“共享所有权”的特性使其非常适合多人共用资源的场景。优先使用:效率高且异常安全。避免重复使用裸指针:通过复制创建新实例。处理this时使用:确保计数一致。防范循环引用:结合weak_ptr使用。shared_ptr。原创 2025-03-06 20:22:14 · 1297 阅读 · 0 评论 -
RAII编程手法
RAII的核心思想是将资源的获取与对象的构造绑定,将资源的释放与对象的析构绑定,从而确保资源在使用完毕后能够被正确释放,即使发生异常也能保证资源不被遗漏。以下是对RAII的详细介绍:RAII的核心理念是:资源的生命周期与对象的生命周期绑定。原创 2025-03-06 16:55:36 · 671 阅读 · 0 评论