![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++
文章平均质量分 94
liuyunluoxiao
小白但努力,记录我每天的成长
展开
-
queue的模拟实现【C++】
适配器模式是一种设计模式,它允许将不兼容接口的类一起工作。希望使用一个类,但其接口与其他代码不兼容。希望创建一个可重用的类,它能够将接口转换为其他接口。希望使用第三方库或遗留代码,但其接口与其他代码不兼容。目标接口(Target):这是期望使用的接口,客户端代码只能与目标接口交互。源接口(Adaptee):这是需要适配的类,其接口与目标接口不兼容。适配器(Adapter):这是一个类,它实现了目标接口,并将调用转换为对源接口的调用。原创 2024-07-21 21:29:24 · 1400 阅读 · 54 评论 -
stack模拟实现【C++】
适配器模式是一种设计模式,它允许将不兼容接口的类一起工作。希望使用一个类,但其接口与其他代码不兼容。希望创建一个可重用的类,它能够将接口转换为其他接口。希望使用第三方库或遗留代码,但其接口与其他代码不兼容。目标接口(Target):这是期望使用的接口,客户端代码只能与目标接口交互。源接口(Adaptee):这是需要适配的类,其接口与目标接口不兼容。适配器(Adapter):这是一个类,它实现了目标接口,并将调用转换为对源接口的调用。原创 2024-07-19 20:43:43 · 1003 阅读 · 42 评论 -
list模拟实现【C++】
在文件mylist.hpp中定义上一个命名空间mylist把list类和它的成员函数放进命名空间封装起来,防止与包含的头文件中的函数/变量重名的冲突问题。原创 2024-07-11 09:59:02 · 2076 阅读 · 59 评论 -
vector模拟实现【C++】
在文件中定义上一个命名空间myvector把vector类和它的成员函数放进命名空间封装起来,防止与包含的头文件中的函数/变量重名的冲突问题。原创 2024-07-03 21:48:02 · 2979 阅读 · 52 评论 -
模拟实现string【C++】
在文件mystring.h和中都定义上一个命名空间mystring把mystring.h中类的声明放进命名空间,把mystring中的函数实现也放进命名空间不同源文件的同名的命名空间经过编译链接之后可以合成在一起。原创 2024-06-28 10:04:51 · 2373 阅读 · 47 评论 -
模板初阶【C++】
不能简单地直接类名+::而是模板类型声明+类中的成员函数的定义[注意此时类名后面还是要加,因为这样才是一个完整的类类型],这样类实例化对象的时候就可以推导出对应的成员函数的类型由于模板类不完整,所以不能直接用它去限定作用域即在类外实现成员函数等用::区限定时,不能直接限定,要先指定类型。原创 2024-06-23 12:00:25 · 1941 阅读 · 46 评论 -
内存管理【C++】
T* p=new T(传给自定义类型的构造函数的参数)T代指类型,p可以是任意合法标识符T* p=new T【n】{{传给第一个自定义类型的构造函数的参数},{传给第二个}T代指类型,p可以是任意合法标识符,n是要申请的连续的类型空间的个数例。原创 2024-06-01 11:22:31 · 2106 阅读 · 77 评论 -
类和对象【六】友元和内部类
内部类是一个。原创 2024-05-26 09:47:27 · 1088 阅读 · 55 评论 -
类和对象【五】const成员和static成员
例。原创 2024-05-18 10:43:08 · 949 阅读 · 60 评论 -
类和对象【四】运算符重载
又因为是在函数中创建的对象,原创 2024-05-03 11:52:13 · 1199 阅读 · 73 评论 -
类和对象【三】析构函数和拷贝构造函数
析构函数(destructor) 与构造函数相反,当对象结束其生命周期,如对象所在的函数已调用完毕时,系统自动执行析构函数。析构函数往往用来做“清理善后” 的工作(例如:在建立对象时用new开辟了一片内存空间,delete会自动调用析构函数后释放内存)。来自百度百科拷贝构造函数是C++中一种构造函数的重载用已有对象创建一个新对象,并将已存在的同类对象的数据成员拷贝到新对象中。拷贝构造函数的形参是一个对该已有对象的引用,并且通常会被声明为const,以防止通过引用修改原对象。原创 2024-04-27 16:10:34 · 1265 阅读 · 77 评论 -
类和对象【二】this指针,构造函数和成员初始化列表【超详细】
C++编译器给每个非静态的成员函数增加了一个隐藏的指针参数,让该指针指向当前对象(函数运行时调用该函数的对象),这个指针就是this指针在函数体中所有“成员变量”的操作,都是通过该指针去访问。只不过所有的操作对用户是透明的,即用户不需要来传递,编译器自动完成在创建对象时调用的特殊方法。其主要作用是给对象的成员赋值。在C++中,构造函数通常没有返回类型,并且不能被声明为const。在创建类的对象时,构造函数自动被调用此外,构造函数可以重载,即可以有多个名字相同的构造函数,但参数列表必须不同。原创 2024-04-20 17:30:30 · 1176 阅读 · 61 评论 -
类和对象【一】类和对象简介
类体 };记得加分号class是类的关键字ClassName是自定义的类名类体所处的作用域是一个新的作用域,即类域每一个类都有自己的类域例。原创 2024-04-12 20:18:05 · 1270 阅读 · 53 评论 -
函数重载和引用【C++】
函数重载:重载函数是函数的一种特殊情况。为方便使用,C++允许在同一作用域中声明几个功能类似的同名函数,但是这些同名函数的形式参数(指1.参数的个数 2.类型 3.顺序)必须至少有一个不同根据这些同名函数的参数表的不同,达成传入参数类型不同,调用的函数不同的效果引用是给已存在变量取一个别名,编译器不会为引用变量开辟内存空间,它和它引用的变量共用同一块内存空间。即使用一个变量的引用就是使用该变量,修改它的引用也是修改变量自己例。原创 2024-04-05 17:00:39 · 1750 阅读 · 51 评论 -
函数参数缺省和内联函数【C++】
直接在函数定义//声明的返回值前+一个关键字inline即可例内联函数的调用方法和普通函数一样因为被包含的头文件会在预处理时展开,所以包含了头文件的文件就内使用该头文件中定义的东西c语言编译和链接例。原创 2024-04-03 12:24:09 · 1103 阅读 · 47 评论