
C++
文章平均质量分 95
学习更底层的原理,从模拟到熟悉
敷敷_
一位想成为优秀程序员的小小奋斗者
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【C++】AVL树|插入|单旋|双旋
AVL树节点的定义增加了一个指向父节点的指针,变成了三叉链结构,在原二叉树的基础上,加上平衡因子(调整平衡的作用)。struct AVLTreeNode //AVL树节点定义//构造函数, _kv(kv), _bf(0){}int _bf;原创 2025-01-06 14:56:07 · 1052 阅读 · 0 评论 -
【C++】map|set|原理使用|multiset|multimap|operator[]|
主要讲述了 C++ STL 中关联容器的基本概念、使用方法以及内部实现原理,特别是 map, set, multiset, 和 multimap 这些容器,介绍了键值对的概念,以及如何在 set 和 map 中使用 pair 类型表示键值对,并解释了为何使用 pair 类型而不是直接在容器中定义 key 和 value 变量;深入探讨了 pair 类型的定义和使用方法,包括如何使用 make_pair 函数创建匿名 pair 对象。随后介绍了 map 和 set 的内部实现原理,指出这些容器使用平衡搜索树(原创 2024-08-03 15:24:06 · 872 阅读 · 0 评论 -
【C++】二叉搜索树|Key模型|key_value模型|基本操作
BST。每个节点包含一个键(key)和两个指针,分别指向其左子树和右子树。左子树上的所有节点的键值都小于其父节点的键值。右子树上的所有节点的键值都大于其父节点的键值。每个子树也是一棵二叉搜索树。每个节点包含三个部分:一个键(Key),一个值(Value),以及两个指向其子节点的指针(分别指向左子树和右子树)。原创 2024-06-24 21:38:41 · 1016 阅读 · 0 评论 -
【C++】多态|原理|override|final|抽象类|多继承虚函数表|对象模型|虚表打印|(万字详解版)
C++11引入了override和final两个关键字,它们增强了面向对象编程中的继承和多态特性,提高了代码的安全性和可读性。虚函数自身自带一个_vfptr的虚函数表子类虚函数继承父类虚函数时,不仅继承父类虚函数表,也可以对虚函数进行重写。子类虚函数继承父类虚函数时,非虚函数不会存放在_vfptr中虚表存的是虚函数指针,不是虚函数,虚函数和普通函数一样的,都是存在代码段的,只是他的指针又存到了虚表中。另外对象中存的不是虚表,存的是虚表指针。原创 2024-06-16 13:31:46 · 831 阅读 · 0 评论 -
【C++】继承|切片|菱形继承|虚继承
C++中的继承是面向对象编程的一个重要特性,它允许一个类(称为子类或派生类)继承另一个类(称为基类或父类)的属性和方法。是最重要的代码复用的手段。是一种在原有基础上进行拓展,增加功能,产生新类的方式;体现了由简单到复杂的认知过程。1.基类private成员无论以什么方式继承到派生类中都是不可见的。这里的不可见是指基类的私有成员还是被继承到了派生类对象中,但是语法上限制派生类对象不管在类里面还是类外面都不能去访问它。2.基类private成员在派生类中不能被访问。原创 2024-06-11 22:30:44 · 1066 阅读 · 1 评论 -
【C++】string|迭代器iterator|getline|find
目录编辑string1.string与char* 的区别 2.string的使用字符串遍历利用迭代器遍历 范围for遍历 反向迭代器 字符串capacity 字符串插入操作 push_back函数append函数 +=运算符编辑 insert函数substr函数 字符串查找函数 find函数 rfind函数编辑 查找函数的使用 getline函数 利用迭代器遍历 范围for遍历 反向迭代器 string - C++ Referenc原创 2024-05-14 23:03:50 · 904 阅读 · 0 评论