
C++
文章平均质量分 95
·醉挽清风·
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
学习笔记—C++—string(练习题)
算法题:仅仅反转字母字符串中的第一唯一字符字符串相加字符串最后一个单词的长度验证字符串是否回文原创 2025-04-20 20:09:05 · 1194 阅读 · 0 评论 -
学习笔记—C++—string(一)
为什么学习string的类● C语言中,字符串是以’\0’结尾的一些字符的集合,为了操作方便,C标准库中提供了一些str系列的库函数,但是这些库函数与字符串是分离开的,不太符合OOP的思想,而且底层空间需要用户自己管理,稍不留神可能还会越界访问。● 在OJ中,有关字符串的题目基本以string类的形式出现,而且在常规工作中,为了简单、方便、快捷,基本都使用string类,很少有人去使用C库中的字符串操作函数● string是一个管理字符数组的类原创 2025-04-20 18:57:43 · 2239 阅读 · 10 评论 -
学习笔记—C++—模板初阶
使用函数重载虽然可以实现,但是有一下几个不好的地方:1. 重载的函数仅仅是类型不同,代码复用率比较低,只要有新类型出现时,就需要用户自己增加对应的函数。2. 代码的可维护性比较低,一个出错可能所有的重载均出错。如果在C++中,也能够存在这样一个,通过给这个模具中,来,那将会节省许多头发。巧的是前人早已将树栽好,我们只需在此乘凉。原创 2025-04-16 19:22:13 · 964 阅读 · 18 评论 -
学习笔记—C++—内存管理
目录C/C++内存管理C/C++内存分布C语言中动态内存管理方式:malloc/calloc/realloc/freeC++内存管理方式new/delete操作内置类型new和delete操作自定义类型operator new与operator delete函数new和delete的实现原理内置类型自定义类型定位new表达式(placement-new)malloc/free和new/delete的区别● 栈又叫堆栈–非静态局部变量/函数参数/返回值等等,栈是向下增长的。●内存映射段是高效的I/O映射方式,原创 2025-04-13 20:07:03 · 1381 阅读 · 3 评论 -
学习笔记—C++—类和对象(三)
● 之前我们实现构造函数时,初始化成员变量主要使用函数体内赋值,构造函数初始化还有⼀种方式,就是初始化列表,初始化列表的使用方式是以⼀个冒号开始,接着是⼀个以逗号分隔的数据成员列表,每个"成员变量"后面跟⼀个放在括号中的初始值或表达式。●每个成员变量在初始化列表中只能出现⼀次,语法理解上初始化列表可以认为是每个成员变量定义初始化的地方。●引用成员变量,const成员变量,没有默认构造的类类型变量,必须放在初始化列表位置进行初始化,否则会编译报错。●C++11支持在成员变量声明的位置给缺省原创 2025-04-13 16:35:46 · 1165 阅读 · 9 评论 -
学习笔记—C++—类和对象(2)
默认成员函数就是用户没有显式实现,编译器会自动生成的成员函数称为默认成员函数。⼀个类,我们不写的情况下编译器会默认生成以下6个默认成员函数,需要注意的是这6个中最重要的是前4个,最后两个取地址重载不重要,我们稍微了解⼀下即可。其次就是C++11以后还会增加两个默认成员函数,移动构造和移动赋值,这个我们后面再讲解。默认成员函数很重要,也比较复杂,我们要从两个方面去学习:原创 2025-04-09 21:25:43 · 958 阅读 · 4 评论 -
学习笔记—C++—类和对象(一)
● class为定义类的关键字,Stack为类的名字,{}中为类的主体,注意类定义结束时后面分号不能省略。类体中内容称为类的成员:类中的变量称为类的属性或成员变量; 类中的函数称为类的⽅法或者成员函数。● 为了区分成员变量,⼀般习惯上成员变量会加⼀个特殊标识,如成员变量前面或者后面加_ 或者 m开头,注意C++中这个并不是强制的,只是⼀些惯例,具体看公司的要求。● C++中struct也可以定义类,C++兼容C中struct的用法,同时struct升级成了类,明显的变化是原创 2025-04-06 20:04:08 · 1273 阅读 · 6 评论 -
学习笔记—C++—入门基础()
C++”是一种多功能的编程语言,它起源于1980年代初,由Bjarne Stroustrup在C语言的基础上发展而来。C++最初被设计为支持面向对象编程的C语言变体,后来经过多次迭代和标准化,发展成为一种广泛应用于系统软件、游戏开发、嵌入式系统等领域的语言。C++的发展经历了多个重要阶段,包括C++98、C++03、C++11、C++14、C++17、C++20和即将到来的C++23标准.定义命名空间,需要使用到namespace关键字,后面跟命名空间的名字,然后接⼀对{}即可,{}中 即为命名空间的成员。原创 2025-04-05 19:08:02 · 2440 阅读 · 0 评论