自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(108)
  • 收藏
  • 关注

原创 继承(1)

(1)父类和子类的同名成员变量。(2)父类和子类的同名成员函数。

2023-09-28 12:59:04 566

原创 模板(1)

【代码】模板(1)

2023-09-27 12:05:08 147

原创 数组中的第K个最大元素

【代码】数组中的第K个最大元素。

2023-09-26 11:55:03 94

原创 仿函数的介绍

/ 仿函数(也叫函数对象)—— 类【重载了 operator()】// 类对象可以像函数一样去使用class lesspublic:public:int main()//本质上是:cout<< IsFunc.operator()(1,2) <<endl;return 0;

2023-09-26 11:53:11 101

原创 优先级队列的使用及模拟实现

【代码】优先级队列的使用及模拟实现。

2023-09-26 11:49:56 123

原创 deque的简要介绍

/ deque底层是由 中控数组(指针数组)【存储各个小数组的地址】和 许多小数组【用于存储数据,且容量相等】 构成的。// 优势:既可以头尾插入删除,又可以随机访问 // 随机访问的方式:operator[](size_t i) // (i- 第一个buffer中个数)/8 第几个buffer // (i- 第一个buffer中个数)%8 那个buffer的第几个 // // 劣势:(1) operator[] 计算稍显复杂,大量使用会导致性能下降。// (2) 中间插入删除效率不高。

2023-09-21 20:22:06 36

原创 stl_stack_queue的模拟实现

【代码】【无标题】

2023-09-21 20:20:10 112

原创 stl_stack_queue的使用及OJ题

【代码】stl_stack_queue的使用及OJ题。

2023-09-18 15:15:23 125

原创 vector的模拟实现 总结

六、erase的迭代器失效——原因是:(pos指向的位置已经不再是原来的值了【由于数据挪动】)2、求出 capacity \ size,以及实现下标遍历及修改:[]三、用下标[]遍历,测试 insert 和 erase。七、测试构造函数(嵌套模板类的,参数是迭代器区间)一、测试 迭代器遍历、下标遍历、尾插、尾删。四、测试 insert时,迭代器失效的状况。五、补充:insert的迭代器失效。十、测试 resize 的功能。九、测试 赋值运算符重载。十一、打印出 杨辉三角形。八、测试拷贝构造函数。

2023-09-13 17:28:48 109

原创 list的模拟实现

4.3 测试 const_iterator。4.4 测试 头插、尾插、头删、尾删。4.1 测试 iterator。

2023-09-11 09:45:25 368

原创 list的用法

【代码】list的用法。

2023-09-10 13:26:33 581

原创 vector的模拟实现

3、求出 capacity \ size 以及实现 operator[ ]2、构造函数与析构函数。6、任意位置插入、删除。

2023-09-02 18:07:47 219

原创 补充:vector的OJ题

【代码】补充:vector的OJ题。

2023-09-01 13:22:40 116

原创 vector的用法

4、vector的迭代器区间与插入、删除。3、测试 vector 的默认扩容机制。5、vector的排序。2、遍历vector。

2023-08-31 11:55:39 80

原创 vector的OJ题

【代码】vector的OJ题。

2023-08-31 11:49:32 83

原创 vector的OJ题

【代码】vector的OJ题。

2023-08-30 16:17:40 163

原创 string的模拟实现

4、返回 C字符串形式、_size 、_capacity。11、测试实现的string类 模拟函数。1、构造函数、析构函数、迭代器。以及 operator [ ]9、判断字符串的大小关系。10、输出、输入操作符。

2023-08-29 12:45:46 165

原创 string用法的练习题

/练习题1:字符串最后一个单词的长度//描述:输入一行字符串,计算字符串最后一个单词的长度,单词以空格隔开int main()string str;//用cin输入字符串时,编译器遇到空格会自动跳到输入下一个对象if (pos!//找得到空格else//找不到空格(说明字符串只有一个单词)return 0;

2023-08-25 15:31:25 260

原创 续:string的用法

【代码】续:string的用法。

2023-08-24 19:14:04 296

原创 迭代器的相关知识

1、迭代器与范围for。2、其余类型的迭代器。3、string插入。

2023-08-21 09:55:45 70

原创 STL---string 基本的成员函数

string类的构造函数//string类的构造函数string s1;// 构造+拷贝构造 ->优化成 直接构造*/string类的赋值运算符重载string s1;!!//赋值s1 = s2;//拷贝赋值//后面两种不常用s1 = 'y';operator[] 遍历string//s1[0] --> s1.operator[](0) --> char& operator[](size_t pos) 取到string的第pos个字符。

2023-08-20 09:44:20 125

原创 模板的知识介绍

【代码】模板的知识介绍。

2023-08-19 18:03:18 235

原创 内存管理(2)

内存管理(2)4、new和delete的实现原理4.1 内置类型4.2 自定义类型5、定位new表达式(placement-new)【了解】6、常见面试题:malloc/free 和 new/delete 的区别;4、new和delete的实现原理4.1 内置类型// 如果申请的是内置类型的空间,new和malloc, delete和free基本类似,不同的地方是:new/delete申请和释放的是单个元素的空间,// new[]和delete[] 申请的是连续空间,而且new在申请空间失败时会抛异

2023-08-18 18:31:11 195

原创 内存管理(1)

int main()//堆上申请空间if (0==p1)return 0;//1、堆上申请空间 2、调用构造函数进行初始化//调用默认构造函数//调用非默认构造函数//申请10个A类型对象的空间,并进行初始化//数组里的对象,先初始化后析构//释放空间free(p1);//1、调用 析构函数 清理对象中资源 2、释放空间delete p2;

2023-08-18 18:27:20 872

原创 C语言和C++的区别

【代码】C语言和C++的区别。

2023-08-18 18:18:47 53

原创 拷贝构造的优化

【代码】拷贝构造的优化。

2023-08-17 12:21:14 139

原创 友员与内部类

【代码】友员与内部类。

2023-08-16 20:15:08 127

原创 explicit关键字 和 static成员

/声明为 static的类成员 称为 类的静态成员, 用static修饰的成员变量,称之为 静态成员变量;用staticx修饰的成员函数,称之为 静态成员函数。//静态成员变量一定要在类外进行定义(初始化)。//对比:普通成员变量在初始化列表进行定义,而静态成员变量必须要在类外进行定义;//性质://1、静态成员为所有 类对象所共享,不属于某个具体的对象,存放在静态区。//2、静态成员变量 必须在 类外定义, 定义时不添加static关键字,类中只是声明。

2023-08-15 11:00:47 200

原创 初始化列表(在构造函数中)

class Timepublic:Time(int hour = 0) //默认构造函数private:int _hour;class Datepublic://要初始化_t 对象,可以在函数体内赋值,但是还是会走初始化列表(调用Time的默认构造)_t = t;Time _t;// a\ 自定义类型成员,一定会用初始化列表进行初始化。

2023-08-14 12:37:29 262

原创 取地址及 const取地址操作符重载

【代码】取地址及 const取地址操作符重载。

2023-08-12 10:49:59 167

原创 const成员函数

【代码】const成员函数。

2023-08-11 18:37:45 164

原创 运算符重载---2

【代码】运算符重载---2。

2023-08-09 15:25:06 105

原创 运算符重载---1

【代码】运算符重载---1。

2023-08-09 14:51:56 92

原创 日期减日期 不复用运算符重载

【代码】日期减日期 不复用运算符重载。

2023-08-07 21:22:45 57

原创 构造、析构、拷贝构造及赋值运算符重载——知识小结

【代码】构造、析构、拷贝构造及赋值运算符重载——知识小结。

2023-08-05 13:03:11 227

原创 类与对象——赋值运算符重载

/当我们没写赋值运算符重载时,编译会自动生成一个默认赋值运算符重载。(对于内置类型成员变量来说,会逐字节进行赋值;//而对于自定义类型成员变量来说,需要调用它自己的赋值运算符重载完成赋值。) //(这一点与拷贝构造一致) //(1)不需要写的类型:A、日期类(都是内置类型成员变量);B、My Queue类(自定义类型成员变量st1,st2;

2023-08-04 15:18:27 139

原创 类与对象(中—-拷贝构造函数)

【代码】类与对象(中—-拷贝构造函数)

2023-08-02 15:53:16 228

原创 类与对象----析构函数

/分析思路:需不需要写析构函数:如果不写,系统自动生成的默认析构函数能否处理;如果默认析构函数无法处理,则就要写。//(1)需要写(默认析构函数无法处理)。动态开辟的资源存储在内置类型成员中的,如果不写析构函数, // 默认析构函数无法对内置类型成员变量处理,就会造成内存泄露。例如:Stack\Queue\List\SeqList\BinaryTree。// (2) 不需要写。(默认析构函数可以处理) //A 日期类(没有类的资源需要清理)。默认析构函数就可以处理,但是没做什么。

2023-08-02 15:45:20 229

原创 类与对象(中--构造函数)

/内置类型:语法自带的,不用定义就可以用的类型,char\int\double\float以及指针(BTNode*)等类型。//自定义类型:需要定义过才可以用的类型,例如:ListNode\BinaryTreeNode等 //特点: //A 内置类型成员变量不做处理 //B 自定义类型成员变量会去调用它(这个自定义类型成员变量)的默认构造函数(如果没有默认构造函数,就无法编译通过)。int _hour;

2023-08-01 10:16:14 58

原创 全局变量与静态变量的链接属性

【代码】全局变量与静态变量的链接属性。

2023-07-30 14:58:30 226

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除