![](https://img-blog.csdnimg.cn/ede86e524abc40718813b88ec61c304c.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
C++经典收录
文章平均质量分 96
本专栏收录博主整个C++学习过程和知识分享
独享你的盛夏
非科班大二在读,阿里云博客专家,致力于C/C++后端研发。乐于分享成长过程中的芝麻,欢迎相互交流。
展开
-
C++:二叉搜索树模拟实现(KV模型)
二叉搜索树又称二叉排序树,作为map、set以及红黑树的底层数据结构基础,对于后续模拟实现封装相关解决具体重要意义。同时二叉搜索树分为Key模型和KV模型,在生活中也具有广泛应用,比如英汉字典,通过英文查找对应中文等等。本篇博客将着手二叉搜索树的底层原理,模拟实现二叉搜索树。原创 2024-02-08 22:15:00 · 3654 阅读 · 50 评论 -
C++:多态究竟是什么?为何能成为面向对象的重要手段之一?
一、多态的概念 二、多态的定义及实现2.1 多态的构成条件、协变、析构函数的重写C++11 override 和 final2.5 重载、覆盖(重写)、隐藏(重定义)的对比 三、抽象类 四、虚函数及虚函数表4.1 虚函数表4.2 虚函数重写覆盖虚表4.3 虚函数存在哪的?虚表存在哪的?五、多态原理5.1 多态调用过程及原理5.2 多态运行时确定?5.3 动态绑定与静态绑定六、单继承和多继承关系的虚函数表6.1 单继承中的虚函数表6.2 多继承中,子类新增虚函数存入那个虚表?原创 2024-01-10 12:32:32 · 4176 阅读 · 68 评论 -
C++:继承
一、继承的概念及定义1.1 继承的概念1.2 继承定义1.2.3 继承基类成员访问方式的变化二、基类和派生类对象赋值转换 三、继承中的作用域四、派生类的默认成员函数五、继承与静态成员六、复杂的菱形继承及菱形虚拟继承6.1 菱形继承的问题6.2 二义性解决办法(1)6.3 二义性解决办法(2)6.4 虚拟继承解决数据冗余和二义性的原理七、继承和组合原创 2024-01-02 12:24:56 · 3986 阅读 · 119 评论 -
C++:stack、queue、priority_queue增删查改模拟实现、deque底层原理
一、C++stack的介绍和使用;二、C++queue的介绍和使用;3.1 deque的简单介绍(了解)、3.2 deque的缺陷、3.3 为什么选择deque作为stack和queue的底层默认容器四、priority_queue的介绍和实现4.1 priority_queue的介绍4.1 priority_queue的介绍增删查改模拟实现前言4.1.1 push()4.1.2 pop()4.3 top()、size()、empty()4.1 priority_queue(优先级队列)增删查原创 2023-12-30 23:30:46 · 4110 阅读 · 76 评论 -
C++:模板进阶
一、非类型模板参数; 二、模板的特化:2.1类模板特化; 全特化、 偏特化;2.2函数模板特化四、模板分离编译:什么是分离编译、模板的分离编译、解决方法五、总结原创 2023-12-29 23:57:46 · 2800 阅读 · 42 评论 -
C++:list增删查改模拟实现
一、list底层双链表验证、节点构造二、迭代器封装实现(重点、难点)2.2 迭代器实现三、list实现3.1 基本框架3.2 迭代器和const迭代器3.2 构造函数、析构函数、拷贝构造、赋值重载3.3 任意位置插入、任意位置删除、尾插、尾删、头插、头删四、list功能完善4.1 迭代器operator->()4.2 打印数据五·、所有代码以及测试用例原创 2023-12-25 16:45:54 · 4810 阅读 · 102 评论 -
C++:vector增删查改模拟实现
一、迭代器1.1 非const迭代器:begin()、end()1.2 const迭代器:begin()、end()二、构造函数、拷贝构造函数、赋值重载、析构函数模拟实现2.1 构造函数2.1.1 无参构造2.1.2 迭代器区间构造2.1.3 n个值构造2.2 拷贝构造2.3 赋值重载3 析构函数三、容量相关:capacity()、size()、reserve()、resize()四、operator[ ]重载 五、元素相关:insert、erase、push_back、pop_ba原创 2023-12-09 08:00:00 · 3596 阅读 · 121 评论 -
C++_String增删查改模拟实现
一、string默认构造、析构函数、拷贝构造、赋值重载 二、迭代器和范围for 三、元素相关:operator[ ] 四、容量相关:size、resize、capacity、reserve五、数据相关:push_bach、append、operator+=、insert、erase六、 关系操作符重载:< 、 ==、 、>=、!=七、find查找字符、字符串、substr7.1 find查找字符7.2 find查找字符串7.3 strsub( ) 模拟实现八、流插入和流提取原创 2023-11-22 12:29:20 · 3986 阅读 · 121 评论 -
C++入门指南:string类文档详细解析(非常经典,建议收藏)
一、 string类解读二·、 string类的常用接口说明2.1 string类对象的常见构造2.2 string类对象的容量操作2.3 string类对象的访问及遍历操作2.4 string类对象的修改操作2.5 string类非成员函数原创 2023-11-05 22:04:34 · 5697 阅读 · 77 评论 -
C++入门指南:10分钟带你快速了解模板究竟是什么(建议收藏!!)
class 类模板名// 类内成员定义// 动态顺序表// 注意:Vector不是具体的类,是编译器根据被实例化的类型生成具体类的模具public :, _size(0){}// 使用析构函数演示:在类中声明,在类外定义。~Vector();// 注意:类模板中函数放在类外进行定义时,需要加模板参数列表//不同类的类名即类型,但类模板不同:类型(类名 + )if(_pData)原创 2023-10-24 12:11:38 · 4659 阅读 · 178 评论 -
1024程序员节特辑 | C++入门指南:内存管理(建议收藏!!)
一、C/C++内存分布1.1 相关例题二、 C语言中动态内存管理方式:malloc/calloc/realloc/free2.1 相关面试题三、C++内存管理方式3.1 new/delete操作内置类型3.2 new和delete操作自定义类型四、operator new与operator delete函数4.1 operator new抛异常演示五、new和delete的实现原理5.1 内置类型5.2 自定义类型5.3 相关例题六、定位new表达式(placement-new)原创 2023-10-23 21:15:21 · 3569 阅读 · 137 评论 -
C++入门指南:类和对象总结笔记(下)
内部类是一个独立的类,它不属于外部类,更不能通过外部类的对象去访问内部类的成员。在类和对象阶段,大家深有体会,类是对某一类实体(对象)来进行描述的,描述该对象具有那些属性,那些方法,描述完成后就形成了一种新的自定义类型,才用该自定义类型就可以实例化具体的对象。Tips:内部类就是外部类的友元类,参见友元类的定义,内部类可以通过外部类的对象参数来访问外部类中的所有成员。友元函数可以直接访问类的私有成员,它是定义在类外部的普通函数,不属于任何类,但需要在类的内部声明,声明时需要加friend关键字。原创 2023-10-13 22:16:50 · 5287 阅读 · 232 评论 -
C++入门指南:类和对象总结笔记(中)
而_t是Time类对对象,在对d销毁时,要将其内部包含的Time类的_t对象销毁,所以要调用Time类的析构函数。但是:main函数中不能直接调用Time类的析构函数,实际要释放的是Date类对象,所以编译器会调用Date类的析构函数,而Date没有显式提供,则编译器会给Date类生成一个默认的析构函数,目的是在其内部调用Time类的析构函数,即当Date对象销毁时,要保证其内部每个自定义对象都可以正确销毁。注意:内置类型成员变量是直接赋值的,而自定义类型成员变量需要调用对应类的赋值运算符重载完成赋值。原创 2023-10-04 19:19:51 · 3953 阅读 · 168 评论 -
C++入门: 类和对象笔记总结(上)
本篇文章首先通过结构体引入类,然后给出类的定义、访问权限、作用域、实例化以及类的存储规则。最后介绍CPP通过this指针来区分不同对象,以及相关笔试题。原创 2023-09-27 22:44:42 · 5386 阅读 · 142 评论 -
浅谈CPP弥补了C的哪些缺陷(建议收藏)
针对C的各种缺陷,Cpp给出的相关的解决办法。(命名空间、C++输入输出、缺省参数、函数重载、引用、内联函数、auto关键字、基于范围的for循环、空指针nullptr)原创 2023-09-23 22:22:28 · 4601 阅读 · 156 评论 -
天选之子C++是如何发展起来的?如何学习C++呢?
什么是C++ 、C++发展史 、C++的重要性、 语言的使用广泛度、 在工作领域、如何学习C++、大佬怎么学?、自己怎么学?原创 2023-09-19 18:36:34 · 6383 阅读 · 106 评论