技术栈
智能指针
消失的旧时光-1943
6 天前
c++
·
智能指针
智能指针(二):机制篇 —— 移动语义与所有权转移
关键词:右值引用、移动构造、std::move、Rule of Five、noexcept、unique_ptr 适合人群:已经理解智能指针存在意义,想深入理解“所有权如何被转移”的开发者
_风华ts
6 天前
c++
·
智能指针
C++智能指针
指针指向某块内存区域,使用普通指针会导致一些程序错误内存泄漏:如果指针指向的内存是动态分配的,那么即使指针离开了作用域,动态分配的内存也不会自动释放,如果动态分配的内存不手动释放,则会导致内存泄漏 悬空指针:如果指针指向一个已经被释放的内存区域,那么这个指针就是悬空指针,使用悬空指针会导致不可预料的结果 野指针:定义了一个指针,却未初始化指向一个有效的内存区域,这个指针就成了野指针,使用野指针访问内存,一般会导致segmentation fault错误
MSTcheng.
19 天前
开发语言
·
c++
·
智能指针
【C++】C++智能指针
前言在上一篇文章中我们向大家介绍了异常,对于异常中忽略资源释放的情况就需要智能指针来解决。所以本篇文章我们来重点介绍一下智能指针。
charlee44
20 天前
c++
·
智能指针
·
raii
·
pimpl
·
编译防火墙
·
封装设计
为什么现代 C++ 库都用 PIMPL?一场关于封装、依赖与安全的演进
在 C++ 的工程实践中,如何在保证资源安全管理的同时,又避免头文件污染和不必要的编译依赖?这个问题贯穿了现代 C++ 库设计的核心。本文将沿着一条清晰的技术演进路径,探讨从 RAII 封装出发,历经值语义、裸指针、智能指针等阶段,最终走向 PIMPL(Pointer to Implementation) 这一成熟且优雅的解决方案。
一匹电信狗
1 个月前
开发语言
·
c++
·
系统架构
·
学习笔记
·
c++11
·
智能指针
·
新特性
【C++】CPU的局部性原理
有梦想的电信狗在实际编程中,我们常会发现: 逻辑相同的代码,仅仅改变数据访问顺序,性能却可能相差数倍。
程序喵大人
1 个月前
开发语言
·
c++
·
智能指针
手写一个智能指针:从 unique_ptr 到 shared_ptr 的引用计数原理
博主介绍:程序喵大人C++ 内存管理的噩梦始于 new/delete 的手动配对,止于智能指针的自动化革新。从 RAII(资源获取即初始化)的核心理念,到 unique_ptr 的独占所有权,再到 shared_ptr 的引用计数共享机制,智能指针体系不仅解决了内存泄漏和悬空指针的顽疾,更通过类型系统明确了资源所有权语义。本文将深入剖析智能指针的实现原理,手写核心代码,助你彻底掌握这一现代 C++ 基石技术。
charlee44
1 个月前
c++
·
智能指针
·
tokenizer
·
ffi
·
raii
C++ 封装 C FFI 接口最佳实践:以 Hugging Face Tokenizer 为例
在现代 AI 工程中,Hugging Face 的 tokenizers 库已成为分词器的事实标准。不过 Hugging Face 的 tokenizers 是用 Rust 来实现的,官方只提供了 python 和 node 的绑定实现。要实现与 Hugging Face tokenizers 相同的行为,最好的办法就是自己封装 Hugging Face tokenizers 的 C 绑定,从而可以被 C++ / C# / Java 这些高级编程语言调用。
White_Can
2 个月前
c++
·
c++11
·
智能指针
《C++11:智能指针》
[作者的个人Gitee>🌟](友人A (friend-a188881041351) - Gitee.com)🌟
BestOrNothing_2015
2 个月前
c++
·
内存管理
·
智能指针
·
裸指针
·
对象生命周期
C++ 智能指针(末):new vs unique_ptr 终极对比 + “指针成员到底是不是创建对象”一次讲透
目录一、前言二、结论先行三、传统 new/delete 写法(下篇问题源头)3.1 表面上没问题(“工程幻觉”)
Trouvaille ~
2 个月前
服务器
·
c++
·
stl
·
资源管理
·
智能指针
·
编程规范
·
raii
【C++篇】智能指针详解(二):原理剖析与高级话题
💬 欢迎讨论:本文是C++智能指针系列的第二篇,将深入剖析智能指针的实现原理,并探讨循环引用、线程安全等高级话题。如果你在学习过程中有任何疑问,欢迎在评论区留言交流!
Trouvaille ~
2 个月前
开发语言
·
c++
·
c++11
·
类和对象
·
智能指针
·
raii
【C++篇】智能指针详解(一):从问题到解决方案
💬 欢迎讨论:智能指针是现代C++中最重要的特性之一,它优雅地解决了内存管理的难题。如果你在学习过程中有任何疑问,欢迎在评论区留言交流!
BestOrNothing_2015
2 个月前
c++
·
内存管理
·
智能指针
·
raii
·
内存销毁
C++ 智能指针深入:四种智能指针所有权模型、原理与常见陷阱全景解析
目录相关内容链接:文章摘要:前言一、从 RAII 到“智能指针家族”的必然分化1.1 RAII 只能保证“释放”,无法表达“关系”
特立独行的猫a
2 个月前
开发语言
·
c++
·
智能指针
·
弱指针
·
weak_ptr
c++弱引用指针std::weak_ptr作用详解
在C++现代编程中,智能指针已成为管理动态内存的基石。然而,许多开发者在接触std::shared_ptr和std::weak_ptr时,常常对后者的存在意义感到困惑。特别是在阅读大型项目源码时,频繁出现的weak_ptr用法更让人疑惑:既然已经有了强大的shared_ptr,为何还需要这种"弱不禁风"的指针?本文将从设计哲学、实现原理到实际应用场景,全面解析std::weak_ptr的奥秘,并通过丰富的代码示例展示其在实际工程中的价值。
胡萝卜3.0
2 个月前
运维
·
开发语言
·
c++
·
人工智能
·
安全
·
智能指针
·
raii
构建安全的C++内存管理体系:从RAII到智能指针的完整解决方案
🔥个人主页:胡萝卜3.0📖个人专栏: 《C语言》、《数据结构》 、《C++干货分享》、LeetCode&牛客代码强化刷题
艾莉丝努力练剑
3 个月前
大数据
·
运维
·
c++
·
安全
·
编辑器
·
智能指针
【C++:智能指针】没有垃圾回收?智能指针来也!破解C++内存泄漏:智能指针原理、循环引用与线程安全详解
🎬 艾莉丝的简介:🎬 艾莉丝的C++专栏简介:看库文件(非官方文档):Cplusplus.com这个文档在C++98、C++11时候还行,之后就完全没法用了……
gcfer
3 个月前
c++
·
右值引用
·
智能指针
·
optional容器
CS144 中的C++知识积累
目录Lab 0Lab 2Optional 容器简单介绍内存特性智能指针简单介绍分类std::unique_ptr(独占所有权)
sulikey
3 个月前
c++
·
面试
·
智能指针
·
raii
·
shared_ptr
·
auto_ptr
·
资源获取即初始化
深入讲解:什么是 RAII(资源获取即初始化)——原理、实现、面试常考点与实战示例
RAII(Resource Acquisition Is Initialization)是 C++ 里极其重要且基础的设计思想,面试里经常被问「什么是 RAII?」「为什么要用 RAII?」「RAII 如何保证异常安全?」等一系列变体。本篇博客从概念到实现细节、常见陷阱、面试高频问答、以及实战代码示例,尽可能详尽地讲清楚 RAII 的来龙去脉,帮助你在面试和工程中都能信手拈来。
代码AC不AC
3 个月前
c++
·
智能指针
【C++】智能指针
个人主页:矢望 个人专栏:C++、Linux、C语言、数据结构上面是我们上期博客的代码,new申请资源之后,我们也释放资源了,但我们之前因为Divide抛异常导致资源没有被释放,从而内存泄漏,所以我们需要new以后捕获异常,捕获到异常后delete释放申请内存,再把异常抛出。