
C++学习
文章平均质量分 81
记录C++学习过程
White の algo
"All in"
展开
-
【C++初阶】模板进阶
1、模板复用了代码,节省资源,更快的迭代开发2、增强了代码的灵活性。原创 2025-04-05 16:20:29 · 918 阅读 · 8 评论 -
【C++初阶】一篇文章带你深入了解stack、queue和priority_queue
stack文档在之前数据结构的学习中我们已经学习过了栈,现在我们来学习stl的适配器——stack1、stack是一种容器适配器,专门用在具有LIFO(后进先出)操作的上下文环境中,其删除只能从容器的一端进行元素的插入与提取操作2、stack是作为容器适配器被实现的,容器适配器即是对特定类封装作为其底层的容器,并提供一组特定的成员函数来访问其元素,将特定类作为其底层的,元素特定容器的尾部(即栈顶)被压入和弹出3、 stack的底层容器可以是任何标准的容器类模板或者一些其他特定的容器类。原创 2025-03-31 17:27:51 · 926 阅读 · 6 评论 -
【C++初阶】list的讲解及模拟实现(重点:迭代器的初深入及实现)
在前面的数据结构的学习中我们就学习过了单链表和双链表详述手打单链表,全是干货!!!-优快云博客双向链表(带头双向循环链表)巨详解!!!_非循环双向链表带附加头结点是什么样的-优快云博客关于链表的增删改查等功能都有详细的讲解,若感兴趣的朋友可以移步!!!list文档。原创 2025-03-31 17:27:23 · 747 阅读 · 5 评论 -
C++__位运算符:位或运算符|
二元运算符,符号为,运用于二进制数中,运用规则简单来说就是有1即1。原创 2024-08-03 22:16:21 · 345 阅读 · 0 评论 -
C++__位运算符:异或运算符 ^
了解异或运算符的定义、性质及用法。 二元运算符,符号为^,与位与、位或不同的是,它在二进制中为相同为0,不同为1。而且它还满足这几种运算规则: 1、任何数^0都等于它本身; 2、两个相同的数异或结果为0; 3、异或满足交换和结合律。总的说异或运算符就是不带进位的二进制加法。应用:1、标记位取反 将二进制数中某位0变为1。 方法:用该数异或(^)上所求位为1其它位为0的二进制数。2、变量交换原创 2024-08-03 22:53:39 · 1709 阅读 · 0 评论 -
c++__位运算符:位与运算符&
一种二元运算符,符号为&,运用于二进制数中,特性为有0为0。原创 2024-08-03 21:52:20 · 500 阅读 · 0 评论 -
C++_指针常量、常量指针、常量指针常量
指针常量数据类型* const p指针的值是个常量指针无法被赋值,指针解引用后有可以被赋值(p1的值不能改变,但是*p1值可以)常量指针const 数据类型* p指向常量的指针指针解引用后无法被赋值,指针可以被赋值(*p2的值不能被修改,但是p2可以)常量指针常量const 数据类型* const p指针值和指针指向的值都是常量指针和指针解引用后都无法被赋值(p3和*p3都无法被修改)原创 2024-07-24 13:01:02 · 873 阅读 · 0 评论 -
【C++初阶】从零开始模拟实现vector(含迭代器失效详细讲解)
模拟实现了vector,并详细讲解了迭代器失效问题原创 2025-03-23 17:14:46 · 1051 阅读 · 7 评论 -
【C++初阶】string类讲解:含常用接口使用及原理模拟实现
1、C语言中,字符串是以’\0’结尾的一些字符的集合,为了操作方便,C标准库中提供了一些str系列的库函数,但是这些库函数与字符串是分离开的,不太符合OOP的思想,而且底层空间需要用户自己管理,稍不留神可能还会越界访问。2、在OJ中,有关字符串的题目基本以string类的形式出现,而且在常规工作中,为了简单、方便、快捷,基本都使用string类,很少有人去使用C库中的字符串操作函数。原创 2025-03-16 16:08:28 · 1243 阅读 · 9 评论 -
【C++初阶】模板初阶
在我们之前的学习中我们要实现一个交换函数,会这么写这个函数可以实现int类型的变量进行交换,但要实现其他类型,如:double、float……等,便要使用函数重载,每当出现新的类型时就需要写一个新的对应函数,太麻烦了!哪有什么方法可以只用一个函数就可以实现都种不同类型变量进行交换呢?泛型编程就可以解决这种问题!!!原创 2025-03-16 16:08:02 · 513 阅读 · 7 评论 -
【C++初阶】类与对象(下)
在成员变量初始化的时候尽量走初始化列表,在编译器中即使不写出初始化列表或者不在初始化列表中初始化的成员变量,也会自动走初始化列表当成员变量在声明时写了缺省值时,初始化列表会按照缺省值进行初始化(初始化列表中没有初始化赋值)所以,以后成员变量初始化时一般都用初始化列表或给缺省值。原创 2025-03-08 18:31:54 · 1162 阅读 · 7 评论 -
【C++初阶】内存管理
C语言的内存管理方法在C++中也可以使用,但是在一些地方是无法处理的而且使用起来会比较麻烦,所以C++就提出了自己的管理方法:new和delete对于连续申请的多个空间的初始化与内置类型不同的是,new/delete对于自定义类型对象不仅会开辟/释放空间,还会调用构造函数和析构函数,初始化了几个就调用几次构造函数和对应的析构函数在这里a的实现要依靠默认构造函数/或对应有参构造函数,如果没有的话就会报错对于内置类型,new/delete与malloc/free是相同的,唯一不同的是,n原创 2025-03-08 18:31:22 · 1108 阅读 · 5 评论 -
【C++初阶】引用细讲解
必须初始化3、引用一旦引用了一个实体,就不可以引用别的实体。原创 2025-03-07 07:30:00 · 954 阅读 · 0 评论 -
【C++初阶】类与对象(中)附带日期类实现代码
默认成员函数就是用户没有显式实现的情况下,编译器自动实现生成的成员函数被称为默认成员函数这六个默认成员函数分别是:这六个默认成员函数,最需要注意的是前四个,两个取地址重载并不重要。默认成员函数很重要,也很复杂,在这里我会从两个方面去学习他们:1、当我们不显式实现他们的时候,编译器默认生成的函数它是怎么运行的,是否满足我们的需求2、当编译器默认生成的函数不满足我们的需求时,我们自己来实现的时候要如何实现内置类型:int、char、double……这些我们平时用到的数据类型就是内置类型。原创 2025-03-07 07:30:00 · 1607 阅读 · 10 评论 -
【C++初阶】类和对象(上)
后接类名,{}中为类的主体,要注意的是类定义结束时}后面的分号不要忘记类体中的内容称为类的成员:类中的变量称为。原创 2024-11-17 11:30:23 · 849 阅读 · 17 评论 -
【C++初阶】inline函数详解
必须在同一个文件。原创 2024-11-17 11:29:58 · 400 阅读 · 14 评论 -
【C++初阶】C++入门
C++是脱胎于C语言的,所以也包含了C语言绝大多数的内容,C++兼容C语言绝大多数的语法,在C语言中能实现的程序在C++中也是可以执行的,但需要将定义文件代码的后缀改为.cpp就比如hello world程序但在C++中,它是自成体系的,有自己的输入输出 c++版的hello world程序为初学C++的小伙伴出看见这个代码会有很多疑惑,但不要慌张,接下来让我来为你详细解释2、命名空间:namespace在看很多书上的C++代码都很看到这样的一行代码“using namespace st原创 2024-11-15 20:32:24 · 1236 阅读 · 0 评论