C嘎嘎进阶
文章平均质量分 97
再次认识C++,对C++的理解更加深刻
დ旧言~
颜值时代更需要言值
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【C++11】特殊类设计
在C++的学习的过程中,我们已经知道如何创建一个类,之后我们学习了类的三大特性封装,继承,多态,在C++11中我们有一些特殊的类,我们称这些类为--->特殊类,那特殊类真的有那么特殊么???⭐主体学习【C++11】特殊类设计咱们按照下面的图解:。原创 2024-04-20 10:13:56 · 1140 阅读 · 33 评论 -
【C++11】类型转换
在C语言中我们学习了类型转换,如 int 遇到 double 类型时 int 类型就会类型转换成 double,这些都是比较简单的类型转换,但是到 C++ 时,日期类需要转换成其它类型那该如何?面对这个问题,在C++11中完成这个补丁,使其C++在相关类也可以类型转换,那C++中如何实现类型转换呢?原创 2024-04-23 12:54:49 · 1503 阅读 · 31 评论 -
【C++】开散列实现unordered_map与unordered_set的封装
我们已经模拟实现了哈希表,当然需要用哈希表来封装相关容器,最初的map和set封装是用红黑树,所以我们就不再封装了map和set,来封装它们的同胞兄弟unordered_map与unordered_set。对比前面map和set的封装还是比较简单的,咱们走起吧!!!⭐主体。原创 2024-03-31 13:37:43 · 1139 阅读 · 22 评论 -
【C++11】异常知多少
想必我们写代码写过bug把,有句话说的好,一天写代码,三天改bug。有些浅层的代码bug在C++11已经给出,我们称这个叫异常,举个简单的栗子,我们 0 是不可以做被除数的,这里我们用 C++11 的异常就可以防止代码崩溃,让我们调试时也更加舒服,所以学习C++11的异常是必须的。⭐主体公司项目一般会进行模块划分,让不同的小组完成不同的模块;所以需要对抛出异常这件事进行规范,如果没有规范,负责最外层捕获异常的人就麻烦了,需要捕获大家抛出的各种类型的异常。原创 2024-04-13 14:09:55 · 749 阅读 · 15 评论 -
【C++11】C++11深度解剖
学习了C++98,必然是需要学习C++新的语法,咱们今天就开始学习C++11.⭐主体相比C++98/03,C++11则带来了数量可观的变化,其中包含了约140个新特性,以及对C++03标准中约600个缺陷的修正,这使得C++11更像是从C++98/03中孕育出的一种新语言。相比较而言,C++11能更好地用于系统开发和库开发、语法更加泛华和简单化、更加稳定和安全,不仅功能更强大,而且能提升程序员的开发效率。原创 2024-04-08 21:27:10 · 1915 阅读 · 31 评论 -
【C++11】智能指针
早期在C语言中我们学习了指针,这个指针学起来真是一个头两个大,当然学习到了这里想必大家对指针就不在害怕了,为了填上C++的不足在C++11中就扩展了智能指针,难道智能指针就真的那么智能吗?⭐主体。原创 2024-04-16 22:38:41 · 1151 阅读 · 39 评论 -
【C++】位图
前面我们已经学习了开散列实现unordered_map与unordered_set的封装,在这个封装当中能拓展出一个知识点--->位图,位图其实是开散列实现unordered_map与unordered_set的封装的一个应用场景,那它这个实际应用到底是个啥呢?今天我们就来看看⭐主体💫 位图的。原创 2024-03-31 13:37:48 · 1352 阅读 · 10 评论 -
【C++】map和set封装
map和set的知识我们学习了,模拟实现我们已经实现了AVL树和红黑树。熟练知识点为map和set的使用提供了前提,手撕AVL树和红黑树让我了解到map和set的底层如何实现,有了知识点和两树的模拟铺垫,那我们该如何封装map和set呢?⭐主体class setprivate:class mapprivate:{}//普通迭代器的时候,它是拷贝构造//const迭代器的时候,它是构造,支持用普通迭代器构造const迭代器{}💫解引用操作作用:返回对应结点数据的引用。原创 2024-03-24 20:26:38 · 1149 阅读 · 28 评论 -
【C++】手撕哈希表的闭散列和开散列
谈到哈希表,大家都做过这样的题目,统计字符串的字母个数,像这样的题目可以创建一个数组,每个字母采用 a['ch']++ 计入数组中,这样的数组我们称之为哈希表,这种哈希表也是最简单的,如果说为了方便直接调用哈希表,那这个哈希表该如何模拟呢?这个问题也是今天我们所探讨的,手撕哈希表。⭐主体。原创 2024-03-24 20:26:42 · 1740 阅读 · 31 评论 -
【C++】手撕红黑树
相信大家肯定听过在C++大名鼎鼎的两颗树,这两颗树分别是AVL树和红黑树,学过的小伙伴听到都是瑟瑟发抖,像一些大厂中可能会考手撕AVL树或红黑树。学习这两棵树确实难度很大,正所谓难度越大动力就越大,那本篇我们学习这两棵树的一颗树--红黑树。⭐主体。原创 2024-03-17 22:06:03 · 2665 阅读 · 31 评论 -
【C++】深度解剖多态
前面我们学习了继承,在c++的面向对象中是重要的部分,而c++另一个重要的部分就是多态,这个板块很实用,在java中使用起来尤其频繁,Java这个语言也是借鉴了c++使用起来比较轻松,学习c++的多态也是必不可少的。⭐主体💫在虚函数的后面写上 =0 ,则这个函数为纯虚函数。包含纯虚函数的类叫做抽象类(也叫接口类),抽象类不能实例化出对象,但可以new别的对象来定义指针,例如Car* pBMW = new BMW;子类继承后也不能实例化出对象,只有重写纯虚函数,子类才能实例化出对象。原创 2024-03-10 14:13:21 · 998 阅读 · 17 评论 -
【C++】map和set深度讲解
早期我们学习了顺序容器(vector,list...),像这块容器中的元素都是按照顺序存储的,学习起来相对来说比较轻松,这个轻松是相对的,在C++STL中我们还有一种容器为关联式容器,这种容器在底层的实现及其复杂,但是使用起来相对容易,也是苦了我们编译器。关联式容器比较有代表性的就是map和set,那它们又是使用呢,又有什么优点呢?带上这些问题进入今天的学习。⭐主体set是按照一定次序存储元素的容器。在set中,元素的value必须是唯一的。原创 2024-03-15 21:12:56 · 1323 阅读 · 17 评论 -
【c++】继承深度解剖
你肯定听过某男子继承百亿家产吧,继承的东西就等于自己的,在c++中也继承,所继承的儿子,都有父类的属性,这个属性可能是父类的成员函数,成员变量...。我们直接再创建一个类就可以了定义属性,那我们为什么需要继承类的属性呢?今天由问题的引出,我们来探讨c++继承的方便。⭐主体💫很多人说C++语法复杂,其实多继承就是一个体现。有了多继承,就存在菱形继承,有了菱形继承就有菱形虚拟继承,底层实现就很复杂。所以一般不建议设计出多继承,一定不要设计出菱形继承。否则在复杂度及性能上都有问题。原创 2024-03-03 21:03:59 · 1504 阅读 · 27 评论 -
【C++】手撕AVL树
相信大家肯定听过在C++大名鼎鼎的两颗树,这两颗树分别是AVL树和红黑树,学过的小伙伴听到都是瑟瑟发抖,像一些大厂中可能会考手撕AVL树或红黑树。学习这两棵树确实难度很大,正所谓难度越大动力就越大,那本篇我们学习这两棵树的一颗树--AVL树。⭐主体。原创 2024-03-15 21:13:00 · 1923 阅读 · 18 评论 -
【C++】二叉树进阶之二叉搜索树
前期呢我们学习了简单二叉树,这个简单真的是一点都不简单呀,如果大家对二叉树的知识点忘记的小伙伴们可以看看这篇博客二叉树的实现-CSDN博客,这篇博客不单单是二叉树的进阶,这次的知识是为了后面的map和set以及红黑树...打下基础,c++的学习也是上了一个层次,进入今天的主题----二叉树进阶之二叉搜索树。⭐主体。原创 2024-03-10 14:13:18 · 1405 阅读 · 22 评论
分享