
C++初阶
文章平均质量分 97
初阶C++
jjrenhai
Wisdom and beauty form a very rare combination.
展开
-
【STL】string的模拟实现
因为string类的成员变量是私有的,我们并不能直接对其进行访问,所以string类设置了size和capacity这两个成员函数,用于获取string对象的大小和容量。empty是string的判空函数,我们可以调用strcmp函数来实现,strcmp函数是用于比较两个字符串大小的函数,当两个字符串相等时返回0。这时我们可以用后方需要保留的有效字符覆盖前方需要删除的有效字符,此时不用在字符串后方加’\0’,因为在此之前字符串末尾就有’\0’了。erase函数的作用是删除字符串任意位置开始的n个字符。原创 2024-02-13 11:16:36 · 818 阅读 · 0 评论 -
【STL】vector模拟实现
在vector当中有三个成员变量_start、_finish、_endofstorage。_start指向容器的头,_finish指向容器当中有效数据的尾,_endofstorage指向整个容器的尾。原创 2024-02-12 16:32:11 · 632 阅读 · 0 评论 -
【STL】list模拟实现
stl_list模拟实现原创 2024-02-08 11:29:41 · 1851 阅读 · 0 评论 -
【C++进阶】继承
继承顾名思义就是将父类的成员往后进行继承,其中有很多的细节供我们发掘。继承(inheritance)机制是面向对象程序设计使代码可以复用的最重要的手段,它允许程序员在保持原有类特性的基础上进行扩展,增加功能,这样产生新的类,称派生类。继承呈现了面向对象程序设计的层次结构,体现了由简单到复杂的认知过程。以前我们接触的复用都是函数复用,继承是类设计层次的复用。原创 2023-07-29 11:53:20 · 198 阅读 · 0 评论 -
【C++初阶】模板
模板进阶体现了很多的不同的方法和思想,这里提供了不同的分类和特化以及分离编译,我们需要掌握百分之八九十并在后面慢慢打磨不断历练。模板参数分类类型形参与非类型形参。类型形参:出现在模板参数列表中,跟在class或者typename之类的参数类型名称。非类型形参:是用一个常量作为类(函数)模板的一个参数,在类(函数)模板中可将该参数当成常量来使用。原创 2023-07-27 15:37:22 · 169 阅读 · 0 评论 -
【C++初阶】 priority_queue(优先级队列)
优先级队列放在这里进行单独讲解,是不同于前面的队列和栈的,它所运用到的数据结构中的知识很多,需要用到堆的知识。优先队列是一种容器适配器,根据严格的弱排序标准,它的第一个元素总是它所包含的元素中最大的。此上下文类似于堆,在堆中可以随时插入元素,并且只能检索最大堆元素(优先队列中位于顶部的元素)。优先队列被实现为容器适配器,容器适配器即将特定容器类封装作为其底层容器类,queue提供一组特定的成员函数来访问其元素。元素从特定容器的“尾部”弹出,其称为优先队列的顶部。原创 2023-07-26 20:02:46 · 356 阅读 · 0 评论 -
【C++初阶】介绍stack_queue及OJ题
简单的stack_queue操作起来和模拟起来很简单,但是其中蕴含的逻辑需要仔细甄别,特别是要根据STL库函数中的代码进行理解起来就稍微有些难以理解,所以我们需要一边利用着源代码一边利用着数据结构的知识进行操作理解。原创 2023-07-26 11:38:09 · 241 阅读 · 0 评论 -
【C++初阶】list
list是数据结构中的链表,在STL库中是很重要的存在,我们利用前面的数据结构中的链表知识能够很快学会list的使用。list是可以在常数范围内在任意位置进行插入和删除的序列式容器,并且该容器可以前后双向迭代。list的底层是双向链表结构,双向链表中每个元素存储在互不相关的独立节点中,在节点中通过指针指向其前一个元素和后一个元素。list与forward_list非常相似:最主要的不同在于forward_list是单链表,只能朝前迭代,已让其更简单高效。原创 2023-07-17 21:47:42 · 225 阅读 · 0 评论 -
【C++初阶】vector
vector是一个和string类似,但比string高级又难理解的新的知识,我们本次仅仅讲解vector的使用,而模拟实现身临其境一下我将会在接下来的章节中进行重新讲解。原创 2023-06-13 22:39:31 · 343 阅读 · 1 评论 -
【C++初阶】string
大家或许对于string很陌生,但我们的string就和c语言中的char有异曲同工之妙,但是我们的string更加地灵活与方便。原创 2023-06-06 23:38:49 · 116 阅读 · 0 评论 -
【C++初阶】模板
什么是模板,它说,用一套模式解决一切烦恼,它又说,只要拥有了我,不管你是函数还是类,都可以用一套阵容解决,那是在是太方便了,我们闲话不多说,直接来!原创 2023-05-18 12:45:17 · 150 阅读 · 0 评论 -
【C++初阶】C/C++内存管理
我们程序中需要存储一些数据,有局部变量、静态变量、全局变量、常量数据和动态申请数据,那么这些数据都存放在哪里呢?接下来我们进行讲解C/C++内存的分布。原创 2023-05-17 08:05:45 · 291 阅读 · 0 评论 -
【C++初阶】类和对象下篇
我们进入最后一个章节,类和对象的下篇,这里我们会分六个板块进行讲解,每一个板块都是深入浅出,直接出发!原创 2023-05-12 19:08:51 · 259 阅读 · 0 评论 -
【C++初阶】类和对象中篇
类和对象在讲解完上篇以后,最关键的下篇来了,最重点为类的六个默认成员函数,这六个默认成员函数很重要,大家要细细品味原创 2023-05-10 20:19:21 · 325 阅读 · 0 评论 -
【C++初阶】类和对象上篇
类和对象的概念大家肯定不了解,下面的一些文案可以供大家学习一下。原创 2023-04-24 23:31:33 · 134 阅读 · 2 评论 -
【C++初阶】C++入门
C++之父本贾尼是在C的基础之上,容纳进去了面向对象编程思想,并增加了很多有用的库。我们在熟悉了前面所讲解的C语言了以后,对C++学习有一定的帮助。原创 2023-04-21 23:07:04 · 592 阅读 · 0 评论