
YY 滴 《C++系列》
文章平均质量分 90
收纳笔者学习C++从0开始的笔记和总结
YY的秘密代码小屋
一个讨厌学习的优快云2023博客之星TOP194,阿里云专家博主,华为云云享专家~;B站同名讲解博客,408与计算机知识,欢迎关注
展开
-
【C++】使用g++指令控制【翻译】各个过程
一.Linux编译器-gcc/g++使用 1. gcc/g++是什么? 2.gcc/g++的作用效果是什么?3.gcc/g++ 怎么使用?选项有哪些?怎么记忆? 二.使用g++指令控制【翻译】各个过程引入:g++控制过程的原理可以理解为一个截断阀,(.c文件)从现在开始进行程序的翻译1.预处理(进行宏替换)2.编译(生成汇编)3.汇编(生成机器可识别代码)4.链接(生成可执行文件或库文件)原创 2024-02-04 11:40:31 · 1197 阅读 · 1 评论 -
【C++】一文深入浅出带你参透库中的几种 [ 智能指针 ]及其背后实现原理(代码&图示)
主要内容有:.前言:智能指针出现解决内存泄漏问题二.RAII三.实现一个简单的智能指针四.简单的智能指针会遇到的问题:(浅)拷贝问题五.库中的几种智能指针※几种智能指针简述1.智能指针演变史2.智能指针简述1)auto_ptr2)unique_ptr3)shared_ptr六.解决shared_ptr的循环引用问题而生:weak_ptr1)了解【循环引用】问2)利用weak_ptr 解决【循环引用】问题七.shared_ptr的【定制删除器】:管理不同方式产生的对象原创 2024-02-02 23:56:59 · 1576 阅读 · 4 评论 -
【C++】C++中的【基础IO流】使用指南 [手把手代码演示] & [小白秒懂]
一.IO流基本介绍 二.标准IO流 1.基本介绍 2. 输出输入【内置类型】和【自定义类型】原创 2024-01-28 23:24:12 · 748 阅读 · 1 评论 -
【C++】C++中的【文件IO流】使用指南 [手把手代码演示] & [小白秒懂]
主要内容为:一.C++文件IO流基本知识1)采用文件流对象操作文件的一般步骤:2)定义一个文件流对象3)文件内容的数据格式分类4)从“输入输出”角度理解——>文件IO和基础IO记忆(cout&cin)二.C++文件IO流操作完整演示(代码)原创 2024-01-27 18:32:54 · 783 阅读 · 0 评论 -
【C++】一文全解四种经典 [ 特殊类 ]的设计
总结如下内容一.请设计一个类,不能被拷贝二.请设计一个类,只能在堆上创建对象三.请设计一个类,只能在栈上创建对象四.请设计一个类,不能被继承(C++11)1)C++982)C++11原创 2024-01-23 14:44:43 · 537 阅读 · 4 评论 -
【C++】【C++的常变量取地址问题(对比C的不同)】const修饰的常变量&volatile修饰用法详解(代码演示)
主要介绍了常变量取地址会出现的问题,以及如何用volatile修饰常变量,附带代码演示原创 2024-01-23 14:44:32 · 542 阅读 · 1 评论 -
【C++】C++中规范[ 类型转换标准 ] 的四种形式
主要内容有一.回顾C语言中的类型转换1)隐式类型转化※隐式类型转换会出现的坑点:2)显式类型转化二.C++的四种类型转换引入:为什么C++需要四种类型转换?1)static_cast——(相关类型/相近类型的相互转换)2)reinterpret_cast——(不相关类型的相互转换)3)const_cast——(去掉const属性后的相关类型/相近类型的相互转换)4)dynamic_cast——(继承中父子对象之间的相互转换)原创 2024-01-22 15:05:42 · 849 阅读 · 0 评论 -
【C++11特性篇】玩转C++11中的包装器(function&bind)
一.为什么需要包装器function?二.function包装器【1】function基本语法一览【2】function解决可调用对象的类型问题——>把可调用对象包装器来,存放到数组中去三.包装器,解决模板的效率低下,同一函数模板实例化多份的问题四.包装器的一个具体应用oj题:逆波兰表达式(利用map+function来解决)五.bind(绑定包装器)【1】基本概念【2】bind实现参数顺序调整的规则示意图【3】bind的一个基本应用场景:不同利率计算(引入变量rate)【4】placeholders::_原创 2023-12-23 16:07:18 · 1161 阅读 · 3 评论 -
【C++11特性篇】新的类功能解读:新增加的[移动构造函数/移动赋值运算符重载]
本文主要介绍了C++新增的移动构造函数和移动赋值运算符重载,通过这篇博客以及传送门的博客,帮助小白轻松入手两个移动语义原创 2023-12-23 00:07:27 · 967 阅读 · 0 评论 -
【C++11特性篇】模板的新一力将:可变参数模板 [全解析]
一.引入:为什么printf可以支持多个参数的输入?————函数的可变参数二.可变参数模板【1】基本可变参数的函数模板演示:【2】使用:求函数包的大小——>【...语法】【3】使用:递归函数方式展开参数包(遍历/打印)演示:【4】使用注意点:参数包(遍历/打印)是不支持类似数组一样的遍历打印方式【5】使用:"逗号表达式"方式展开参数包(遍历/打印)演示:(看懂即可)【6】使用:一般(遍历/打印)展开参数包的最常用方式——>【...语法】三.【可变参数-模板】的优势:——>直接传包,直接构造【1】简易代码原创 2023-12-22 20:17:29 · 1868 阅读 · 0 评论 -
【C++11特性篇】lambda表达式玩法全解
一.lambda解决个性化排序问题 [1]设计商品结构体 [2]利用仿函数(函数对象)解决个性化排序一览 [3]利用lambda解决个性化排序一览 二.lambda表达式语法 1)lambda表达式总览 2) lambda的返回值类型一般可以省略 3) 捕捉列表能够捕捉上下文中的变量供lambda函数使用 4) 捕捉列表【特殊使用方式】一览 5) mutable在【原创 2023-12-21 13:27:57 · 1246 阅读 · 2 评论 -
【C++11特性篇】一文带小白轻松理解【万能引用(引用折叠)】&【完美转发】
一.万能引用 【1】基本概念 【2】在C++中的应用场景简述(代码演示) 二.完美转发 【1】完美转发应用的引入 【2】基本概念 【3】在C++中的应用场景简述(代码演示) 三.完美转发实际中的使用场景 【1】希望传入函数的右值能够保留右值走【移动构造】而不是【拷贝构造】 四.关于【左值引用】【右值引用】易混淆的知识点 【1】结论:右值引用变量的属性会被编译器识别成原创 2023-12-20 20:13:47 · 1741 阅读 · 1 评论 -
【C++11特性篇】探究【右值引用(移动语义)】是如何大大提高效率?——对比【拷贝构造&左值引用】
本篇文章主要内容是探究在C++11中新增加的移动构造是如何大大提高效率;本文介绍了基本的传值返回过程,以及左值引用提高效率的原理,最后注重分析了右值引用与移动构造;包括简述移动构造过程,简述编译器对连续的拷贝构造和移动构造优化过程,移动赋值的优化过程原创 2023-12-17 18:20:49 · 1147 阅读 · 8 评论 -
【C++11特性篇】一文助小白轻松理解 C++中的【左值&左值引用】【右值&右值引用】
本文介绍了左值&左值引用,右值&右值引用,配有简洁明了的代码与思维导图帮助大家理解。同时还介绍了左值引用右值,右值引用左值的规则原创 2023-12-17 14:11:29 · 994 阅读 · 2 评论 -
【C++11特性篇】盘点C++11中三种简化声明的方式【auto】【decltype】【nullptr】(3)
盘点了C++11中三种简化声明的方式:1.auto与范围for 2decltype 与typeid查看类型 3.nullptr表示空指针原创 2023-12-16 17:12:24 · 633 阅读 · 10 评论 -
【C++11特性篇】C++11中新增的initializer_list——初始化的小利器(2)
本文主要介绍了initializer_list;用简单的例子帮助大家了解initializer_list是什么,以及它的使用场景,最后拿其与C++11新增的{}用法初始化做对比原创 2023-12-16 15:11:21 · 1123 阅读 · 0 评论 -
【C++11特性篇】利用 { } 初始化(1)
本篇博客回顾了c++98中花括号{}的使用,对比了C++11中花括号{}的使用,区分了列表初始化和初始化列表原创 2023-12-16 14:36:38 · 530 阅读 · 0 评论 -
【C++】map/multimap/set/multiset的经典oj例题 [ 盘点&全面解析 ] (28)
本题主要盘点了几道map,mutimap,set,mutiset应用的例题,包括求前k个高频单词,左右符号匹配问题,两个数组的交集原创 2023-12-09 00:31:28 · 1449 阅读 · 17 评论 -
【C++】仿函数在模板中的应用——【默认模板实参】详解(n)
主要介绍了在模板中常常见到的一类默认模板实参——(与仿函数相结合)原创 2023-12-09 00:30:45 · 495 阅读 · 1 评论 -
【C++】树型结构关联式容器:map/multimap/set/multisetの使用指南(27)
主要内容有 键值对 关联式容器&序列式容器 k模型&k-v模型 树形结构的关联式容器map/set/mutiset/mutimap的介绍与基本使用操作,构造与增删查改等;原创 2023-12-04 21:51:22 · 1641 阅读 · 14 评论 -
【数据结构&C++】超详细一文带小白轻松全面理解 [ 二叉平衡搜索树-AVL树 ]—— [从零实现&逐过程分析&代码演示&简练易懂]
本文详细总结了AVL树的各种知识点,含代码与图演示逐过程分析。包括AVL节点,AVL树的插入操作,AVL树的旋转操作,AVL树的验证,AVL树的完整代码原创 2023-11-19 23:04:02 · 675 阅读 · 4 评论 -
【C++】一文全解C++中的异常:标准库异常体系&自定义异常体系(含代码演示)
本篇文章详细解读了C++中的异常,有详细代码和分析帮助小白更好理解异常的运作与机制:包括异常基本概念,抛出捕获过程,异常继承体系,智能指针引入解决内存泄漏,异常基本规范等原创 2023-11-19 22:14:26 · 1549 阅读 · 4 评论 -
【C++&数据结构】二叉树(结合C++)的经典oj例题 [ 盘点&全面解析 ](24)
本篇文章是数据结构中树的进阶oj盘点加逐过程解析:有1.用二叉树创建字符串2.给定一个二叉树求公共祖先3.二叉搜索树转换成排序双向链表4.根据一棵树的前序遍历与中序遍历构建二叉树5.不使用递归,利用迭代法实现前序遍历原创 2023-11-16 11:12:44 · 436 阅读 · 9 评论 -
【C++&数据结构】超详细一文带小白轻松全面理解 [ 二叉搜索树 ]—— [从零实现&逐过程分析&代码演示&简练易懂](23)
本文介绍了二叉树的基本概念,二叉搜索树的完整代码逐个过程的分析以及实现代码,包括查找,插入,删除,中序遍历注意点;很适合小白入手,简练扼要的表达和总结帮助理解原创 2023-11-14 13:16:53 · 835 阅读 · 19 评论 -
【C++】多态(重写)的实现过程及其原理【核心知识点精讲】(22)
本篇文章主要展现的是多态的原理,调用函数时的动作,以及动态绑定等等操作细节。同时在文章开头也会介绍一些必要的基础知识,虚函数虚函数表,虚函数虚函数表的存储问题,派生类的虚表生成,动静态绑定等等原创 2023-11-09 00:24:28 · 918 阅读 · 10 评论 -
【C++】一文简练总结【多态】及其底层原理&具体应用(21)
本文主要介绍了多态的概念,多态的实现(虚函数,虚函数表,虚函数的重写,多态的构成,虚函数重写的两种特殊情况),c++11中引入的两个关键字【override】【final】从两个角度帮助用户检查是否重写,多态的具体应用:抽象类(又名,接口类,纯虚函数类)原创 2023-11-08 23:38:08 · 1005 阅读 · 29 评论 -
【C++】万字一文全解【继承】及其特性__[剖析底层化繁为简](20)
全文包括1.继承复用组合的区别2.继承的基本格式与继承以后的访问方式变化(基类成员),其中重点包括其访问方式的变化——基类成员经过不同继承以后分别到派生类中的什么作用域中。基类和派生类对象的复制转换(切片)3.继承中的隐藏4.派生类的默认成员函数生成机制5.派生类的默认成员函数生成机制6.友元关系不能被继承7.基类定义了static静态成员,整个继承体系里面只有这样一个成员8.复杂的菱形继承以及菱形虚拟继承原创 2023-11-08 23:35:53 · 2316 阅读 · 38 评论 -
【C++】STL容器适配器——priority_quene(堆/优先级队列)类的使用指南(含代码使用)(19)
主要介绍了优先级队列(堆)的使用,包括其的文档介绍,使用环境准备,文档查看,以及其的基本使用。最后附上一道例题,top-k问题变式,求数组中最大的第k个元素是多少原创 2023-11-13 08:07:00 · 365 阅读 · 5 评论 -
【C++】STL容器适配器——queue类的使用指南(含代码使用)(18)
介绍了容器适配器queue类的基本信息,使用环境,文档查看,常用接口,以及展示了queue类应用层序遍历原创 2023-11-10 09:05:28 · 516 阅读 · 10 评论 -
【C++】STL容器适配器——stack类的使用指南(含代码使用)(17)
介绍了,容器适配器stack的使用,包括基本介绍,使用环境,文档查看,常用接口,以及例题应用:逆波兰表达式求值原创 2023-11-06 22:45:42 · 428 阅读 · 5 评论 -
【C++】STL容器适配器入门:【堆】【栈】【队列】(16)
本篇短文带大家入门stl的容器适配器原创 2023-10-29 00:15:54 · 323 阅读 · 16 评论 -
【C++】STL容器——探究不同 [ 迭代器 ] 种类&在STL中的使用方式(15)
本篇文章探究立刻不同的迭代器在stl中的使用方式原创 2023-10-29 00:15:14 · 314 阅读 · 9 评论 -
【C++】STL容器——探究List与Vector在使用sort函数排序的区别(14)
本篇文章探究了list和vector在使用sort函数排序时的区别原创 2023-10-29 00:14:10 · 571 阅读 · 1 评论 -
【C++】STL容器——list类的使用指南(含代码演示)(13)
本文主要是list类的使用指南,包括list的构造,访问,增删查改,以及空间相关函数的代码演示原创 2023-10-29 00:13:36 · 311 阅读 · 0 评论 -
【C++系列】STL容器——vector类的例题应用(12)
这里收纳了vector容器使用场景,有只出现一次的数字i,杨辉三角,电话号码的数字组合原创 2023-10-27 00:40:30 · 580 阅读 · 1 评论 -
【C++】STL容器——vector类的使用指南(含代码演示)(11)
包括了vector的基本介绍使用环境准备文档查看,介绍了vector的构造与初始化,以及vector用两种迭代器区间初始化,vector的遍历与访问操作,vector的增删查改操作,vector空间相关函数,size capacity,empty,reserve,resize等等原创 2023-10-27 00:39:47 · 387 阅读 · 0 评论 -
【C++】STL容器——【深浅拷贝】与【写时拷贝】对比详解(拷贝构造)(10)
主要分析了深拷贝,浅拷贝,以及写时拷贝原创 2023-10-25 00:41:51 · 820 阅读 · 6 评论 -
【C++】STL容器——string类的例题应用(9)
收纳一系列string的习题。包括翻转字符串,判断回文,找字符串第一个只出现一次的字符,输入一个字符串求字符串最后一个单词长度,两个字符串相加原创 2023-10-25 00:40:35 · 548 阅读 · 38 评论 -
【C++】STL容器——string类的使用指南(含代码演示)(8)
含string的基本介绍,使用环境,查看文档教程,已经总结了常用的接口,以及对string对象的访问以及遍历操作,修改string的操作,尾插,强制类型转换,分割原创 2023-10-21 23:43:55 · 524 阅读 · 46 评论 -
【C++】格式与实例化操作——[模板]详解(7)
一篇博客解决模板知识点:函数模板,类模板,类模板和函数模板的特化,全特化偏特化,以及模板的分离编译原创 2023-10-21 23:37:17 · 527 阅读 · 44 评论