- 博客(10)
- 收藏
- 关注
原创 【C++精讲系列】五分钟带你彻底搞懂虚函数,虚表和虚继承
在 C++ 中,虚函数几乎是不可避免的工程工具,而虚继承几乎永远不该成为默认选择。前者为运行期多态付出了一点可以接受的成本,后者则是在继承结构已经失控时,用复杂度换语义正确性的补救机制。本文从虚函数与虚表出发,拆解它们如何改变对象的内存布局和调用路径,并进一步分析多继承与虚继承为何会迅速推高复杂度。
2026-01-05 14:55:28
402
原创 【C++精讲系列】五分钟带你彻底搞懂完美转发
完美转发并不是一项独立的语言特性,而是模板推导、引用折叠与移动语义共同作用的结果。本文从语义丢失的问题出发,系统分析完美转发的设计原理,并结合工程场景说明它在通用封装中的实际价值。
2026-01-04 15:21:25
523
原创 【C++精讲系列】五分钟带你彻底搞懂移动语义
移动语义并不是“更快的拷贝”,而是一次资源所有权模型的升级。本文从深拷贝与浅拷贝的局限性出发,结合 Rust 所有权模型,系统梳理 C++ 中右值引用、移动构造与移动赋值的设计动机及实际应用场景。
2026-01-04 14:25:11
601
原创 【数据结构】哈希表
本文系统地介绍了哈希表的核心概念与实现方法。首先阐述了哈希表的基本原理,包括哈希函数、哈希冲突和负载因子等关键概念。然后详细讲解了三种常见的哈希函数实现方法:除法散列法、乘法散列法和全域散列法。针对哈希冲突问题,重点分析了两种解决方案:开放定址法(含线性探测、二次探测、双重散列)和链地址法,并提供了完整的C++代码实现。文章还讨论了哈希表扩容策略、字符串键的特殊处理等实用技巧,实际应用中需根据场景选择合适的哈希函数和冲突解决策略。
2025-10-02 14:06:29
819
原创 【数据结构】红黑树
红黑树是一种自平衡二叉搜索树,通过颜色标记和规则约束实现平衡。其核心规则包括:根节点为黑、不能连续红节点、各路径黑节点数相同。
2025-09-25 16:42:34
743
原创 【数据结构】AVLTree
AVL树是一种自平衡二叉搜索树,通过平衡因子(右子树高度减左子树高度)确保任意节点的左右子树高度差不超过1。本文详细介绍了AVL树的实现,包括节点结构、插入操作和四种旋转方式(左/右单旋、左右/右左双旋)。
2025-09-20 16:23:54
1227
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
2