
C++学习
文章平均质量分 93
小白在进击
努力且幸运
展开
-
【C++】日志/守护进程组件
项目日志组件,守护进程组件原创 2023-07-22 16:19:17 · 445 阅读 · 0 评论 -
【C++】设计模式
建造者模式是一种创建型的设计模式,使用多个简单对象一步一步构建成一个复杂的对象,能够将一个复杂的对象的构建与它的表示分离,提供一种创建对象的最佳方式。代理模式指的是代理控制对其他对象的访问,也就是代理对象控制对原对象的引用。这个模式的结构和管理产品对象的方式非常简单,但是它的扩展性非常差,当我们需要新增产品的时候,就需要去修改工厂类新增一个类型的产品创造逻辑,违背了开闭原则。工厂方法模式每次增减一个产品时,都需要增加一个具体的产品类和工厂类,这使得系统中类的个数成倍的增加,在一定程度上增加了系统的耦合度。原创 2023-07-19 10:26:25 · 289 阅读 · 0 评论 -
【C++】C++11--右值引用
C++11右值引用概念,原理,使用详解,完美转发,万能引用介绍原创 2023-07-16 17:19:21 · 332 阅读 · 0 评论 -
【C++】C++ 类型转换
C/C++类型转换方法解释和介绍,C++类型转换四种操作符讲解原创 2023-07-16 09:54:30 · 168 阅读 · 0 评论 -
【C++】C++11---lambda表达式,包装器
C++11新特性lambda表达式介绍,使用,底层原理。function和bind包装器的介绍与使用原创 2023-07-16 09:45:28 · 242 阅读 · 0 评论 -
【C++】C++11-- 可变模版参数
C++可变模版参数介绍,参数包的递归展开,逗号表达式展开,emplace系列接口介绍原创 2023-07-16 09:42:54 · 218 阅读 · 0 评论 -
【C++】C++11--智能指针
C++智能指针的使用,原理以及模拟实现原创 2023-07-14 13:21:33 · 1528 阅读 · 0 评论 -
【C++】C++异常机制
C++异常介绍,C/C++错误处理方式对比,C++异常使用方法,异常安全问题,如何自定义异常体系,以及异常优缺点原创 2023-07-13 18:02:35 · 414 阅读 · 0 评论 -
【C++】特殊类设计
只能在堆上创建的类,只能在栈上创建的类,不能被继承的类,不能被拷贝的类,单例模式介绍原创 2023-07-11 14:38:56 · 221 阅读 · 0 评论 -
【C++】八大排序
C++实现八大排序算法,并进行封装,有插入排序,希尔排序,选择排序,堆排序,冒泡排序,快速排序(重点)的多种版本,如hoare版本,挖坑法,前后指针法,非递归法,以及快速排序的优化方法。还介绍了归并排序的递归和非递归实现,分治算法的基本介绍,计数排序,以及排序算法的复杂度和稳定性的分析原创 2023-01-12 13:25:18 · 708 阅读 · 0 评论 -
【C++】哈希应用
常见哈希函数,如直接定制,除留余数,平方取中,折叠法等,以及位图的应用,使用C++模拟实现位图。了解布隆过滤器原理,并且模拟实现,对布隆过滤器的性能以及优缺点进行评估,哈希切割介绍原创 2022-10-15 10:29:01 · 1912 阅读 · 16 评论 -
【C++】unordered map/set
优化之前写的LinkHashTable,模拟实现STL中的unordered_map和unordered_set数据结构,对其构建封装迭代器(构造,operator++/--/!=/*/->等函数的编写),并且模拟实现哈希表的基本接口,如构造,拷贝构造,begin/end,insert,erase等函数的编写,并提供源码原创 2022-10-11 01:36:11 · 873 阅读 · 34 评论 -
【C++】哈希表模拟实现
了解哈希表的几种实现方式,初步了解哈希函数,初步构建简单的封闭哈希表,实现插入,查找,删除等。然后对封闭哈希表基础上进行更新,引出介绍链式哈希表,实现最简单的插入查找,删除原创 2022-10-10 23:59:56 · 1218 阅读 · 3 评论 -
【C++】map/set模拟实现
STL库map数据结构模拟实现,使用红黑树构建哈希表,首先介绍总体框架,利用模板等构建红黑树的结点,构建封装红黑树的迭代器(++、--、*、-> 运算符进行函数重载)。构建红黑树,并模拟实现常用接口,如构造函数,拷贝构造函数,赋值运算符重载,析构函数,begin,end函数,查找函数,插入函数,以及保证树较为平衡的旋转函数,交代红黑树保持相对平衡的底层原理和实现细节,最后将成品map和set的框架进行介绍原创 2022-10-10 20:08:30 · 504 阅读 · 0 评论 -
【C++】红黑树模拟实现
介绍红黑树的基本概念和实现思路,再模拟实现一颗红黑树,构建结点,插入数据等函数进行模拟实现,并介绍红黑树保持相对平衡的原理,对红黑树进行测试以及性能的评估原创 2022-10-02 22:33:57 · 732 阅读 · 1 评论 -
【C++】AVL树模拟实现
介绍搜索平衡二叉树基本概念与实现思路,实现AVL树简单插入接口,介绍并画图讲述AVL树保持平衡的思路,并模拟实现AVL树翻转保持平衡接口,并对AVL树插入已经性能进行测试原创 2022-10-02 18:33:05 · 760 阅读 · 0 评论 -
【C++】二叉搜索树set/map
本篇介绍了STL库中的map和set类,介绍关联式容器,键值对,以及使用key模型的搜索平衡二叉树的构建,map/set的基本使用原创 2022-09-27 00:20:01 · 1700 阅读 · 1 评论 -
【C++】二叉搜索树
本篇介绍了二叉搜索树的基本概念和结构,搜索二叉树的常用接口进行递归和非递归两种方式模拟实现(插入,查找, 中序遍历,删除等接口)并对搜索树的价值进行介绍,并对为何频繁使用子函数用意进行解释原创 2022-09-20 21:36:50 · 488 阅读 · 8 评论 -
【C++】多态语法
本篇主要介绍了多态的概念及构成,虚函数重写,override和final关键字的使用,重载,重写,重定义的区别,抽象类(接口类)使用方式,多态的原理,虚函数表和函数地址,如何打印虚函数表,多继承中的虚函数表是怎么样的。通过简单的代码编写以及调试让我们进一步理解继承和多态的原理以及使用方法原创 2022-09-17 14:41:34 · 908 阅读 · 1 评论 -
【C++】继承详解
本篇介绍了,C++继承的基本概念,基类和派生类对象的赋值转换,继承作用域,派生类的默认成员函数,继承和友元的关系,静态成员变量的继承,菱形继承和虚拟继承的原理,继承和组合等概念,以及使用简单调试进行理解继承原创 2022-09-14 19:17:57 · 687 阅读 · 0 评论 -
【初识C++】5.模板详解
通过对STL中五种类的模拟实现代码编写,对模板的理解应该更深,其实模板还有很多玩法,此篇对模板的全特化,偏特化,以及非类型模板参数特化,以及模板的分离编译进行了详细的介绍原创 2022-09-06 16:54:23 · 215 阅读 · 0 评论 -
【初识C++】4.4STL-stack queue priority_queue
STL 栈, 队列, 优先级队列的模拟实现,仿函数介绍原创 2022-08-17 16:20:55 · 469 阅读 · 0 评论 -
【初识C++】4.3 STL-list
STL标准库list类模拟实现,结点的模拟实现,迭代器类的模拟实现,对迭代器的各种运算符重载进行模拟实现,然后对list类进行基本构建,编写其重要的常用成员函数原创 2022-08-17 11:40:01 · 260 阅读 · 0 评论 -
【初识C++】4.2 STL-vector
C++标准库vector类模拟实现,简单介绍vector类,介绍vector的构造,遍历,扩容以及增删改查方式,并介绍vector类中迭代器失效的原因。模拟实现vector类,封装vector类的迭代器,编写默认成员函数,增删改查函数,介绍swap和operator[],memcpy的局限性,并将源码进行展示原创 2022-08-03 22:40:22 · 397 阅读 · 1 评论 -
【初识C++】4.1 STL-string
介绍C++标准文档,学习STL库中的string类,实现string类中的重要接口(构造,遍历,增删改查等),编写简单的Makefile,并对string类进行封装,理解如何选择成员变量,如何构建成员函数,并对string类的遍历扩容方式进行介绍,模拟实现string类的增删改查,还有逻辑操作运算符的重载原创 2022-07-27 21:48:14 · 411 阅读 · 9 评论 -
【初识C++】4.0 STL学习(前言)
初步了解C++标准库STL,对STL版本,六大组件,以及缺陷进行初步介绍,让大家对STL有一个答题的认识,并讲述应该如何学习STL原创 2022-07-17 18:04:56 · 285 阅读 · 11 评论 -
【初识C++】3.1内存管理和模板
C++动态内存管理介绍,new/delete基本使用(对内置类型和对自定义类型的使用细则),对new/delete进行运算符重载,对构造和析构函数的使用进行进一步了解,并对malloc/free和new/delete进行对比区分。初步了解内存泄漏的概念以及可能原因,初步了解使用模板,学习泛型编程,并对简单函数进行模板的实例化,实现简单的类模板,理解C语言中类模板的缺陷原创 2022-07-15 12:01:02 · 263 阅读 · 0 评论 -
【初识C++】2.3类与对象(下)
深度理解const关键字,学习const的三种基本修饰方法,理解权限缩小,了解const修饰this指针以及认识最后两个默认函数。并深度了解构造函数初始化,对成员初始化进行深度了解,介绍explicit关键字,匿名对象,介绍友元以及其使用方法(如创建友元函数,构建友元类等),介绍static静态成员,内部类以及初步理解封装概念原创 2022-07-09 17:23:35 · 324 阅读 · 0 评论 -
【初识C++】2.2类与对象(中)
介绍C++六个默认函数,每个函数的概念以及特性,对六个默认函数具有初步的了解以及编写能力原创 2022-06-18 20:02:57 · 168 阅读 · 1 评论 -
【初识C++】2.1类与对象(上)
区分面向过程和面向对象编程,引入C++的类,学会定义类,理解封装以及访问限定符和作用域,学习类的实例化,了解类对象的模型,如何计算类对象大小,类中内存对齐规则介绍,了解类中的this指针,并且学习this指针的各种特性原创 2022-06-09 15:11:31 · 167 阅读 · 3 评论 -
【初识C++】1.1初识C++
初步认识C++,比较C与C++的关系,C++关键字,命名空间,输入输出方式,缺省参数的概念和分类进行介绍,并介绍C++函数重载的概念以及原理(函数名字修饰),介绍extern "C",初步介绍引用的概念,特性等,对常引用,以及传值传引用的效率,还有值或引用返回性能的比较,介绍引用和指针的区别。了解内联函数,以及更深层次了解宏,auto关键字介绍,以及对小部分C++11特性及逆行讲解,如范围for还有指针空值nullptr原创 2022-06-07 23:36:46 · 191 阅读 · 9 评论