自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【c++进阶(二)】STL之string类的模拟实现

本章重点本章主要介绍一些关键接口的模拟实现,例如:构造函数,拷贝构造函数,析构函数,赋值重载函数,插入删除函数等等。string类的大部分重要接口都已经完全的实现了,希望这部分内容能够重点掌握--因为在面试的过程中很有可能考官让你手撕一个string类下期预告:vector。

2024-06-03 17:02:35 1044

原创 【c++进阶(一)】STL之string接口介绍

本章重点本章着重讲解string中一些重要的接口函数:构造函数,析构函数,拷贝构造函数,赋值重载函数,插入,删除,扩容,resize,append等接口。string这个类非常的重要,基本可以说string可以贯穿程序员的始终,你无时无刻不在处理字符串,你也无时无刻不在使用字符串。因此一定要好好的掌握string中的重要接口。string中的重要接口除了上述常用的以外,还有许多需要特别关注的,各位看官老爷可以自己去看看。链接find函数接口operator+=函数接口c_str函数接口。

2024-06-01 21:32:11 1376

原创 【c++基础(六)】模版初阶--泛型编程,类模板

泛型编程时c++的一大利器,用好了绝对让你少很多麻烦。c++基础到这里就告一段落了,接下来就是c++的重中之重了 : STL的学习下期预告:STL之string。

2024-05-31 16:45:05 1108

原创 【c++基础(五)】内存管理--new

new的原理1.调用函数申请空间2.在申请的空间上执行构造函数,完成对象的构造delete的原理1.在空间上执行析构函数,完成对象中资源的清理工作2.调用函数释放对象的空间new T[N]的原理1.调用函数,在中实际调用函数完成N个对象空间的申请2.在申请的空间上执行N次构造函数delete[]的原理1.在释放的对象空间上执行N次析构函数,完成N个对象中资源的清理2.调用释放空间,实际在中调用来释放空间此章总结完,就可以去new一个对象了。

2024-05-30 19:57:30 1007

原创 【c++基础(四)】类和对象下--初始化列表等概念

类和对象到这里基本已经接近尾声,本篇文章主要介绍一些与类和对象有关的相关细节,在后续使用类和对象中也有可能用的到。本章重点: 在谈论初始化列表之前就要再次提及构造函数了:这就引出了初始化列表的概念。先上例子:初始化列表不仅可以像上面那样使用,也可以在{}里面对初始化的值进行赋值操作2.1 初始化列表的作用有些变量在初始化时必须对他赋初值:例如:引用成员变量 const成员变量 因此博主建议:尽量后续在使用类和对象的时候,都用初始化列表进行初始化。很多小伙伴就问了,是不是初始化列表就

2024-05-29 15:50:46 803

原创 【c++基础(三)】类和对象中--拷贝构造和运算符重载

拷贝构造函数典型调用场景:使用已存在对象创建新对象函数参数类型为类类型对象函数返回值类型为类类型对象一定要好好区分赋值运算符重载和拷贝构造函数,这两者极容易混淆。拷贝赋值函数:针对一个已经存在的对象进行初始化操作。拷贝构造函数:针对一个新创建的对象进行初始化操作。Plane a1;//拷贝构造Plane a3;//拷贝赋值a2 = a3;const成员将const修饰的成员函数称之为const成员函数const修饰类成员函数,实际修饰该成员函数隐含的this指针。

2024-05-28 13:34:25 898

原创 【c++基础(三)】类和对象中--构造和析构函数

构造函数是析构函数是对立的,一个用于初始化,一个用于销毁对象调用掌握它们对后面类和对象的学习很重要。类的六个默认函数:现在已经学了前两个了,后续在学其他几个。下期预告:拷贝构造和运算符重载。

2024-05-27 13:32:59 1020

原创 【c++基础(二)】类和对象(上)

面向对象一般和面向过程结合来看的面向过程(Procedure Oriented 简称 PO):把事情拆分成几个步骤(相当于拆分成一个个的方法和数据),然后按照一定的顺序执行。面向对象(Object Oriented 简称 OO):面向对象会把事物抽象成对象的概念,先抽象出对象,然后给对象赋一些属性和方法,然后让每个对象去执行自己的方法。举例:用洗衣机洗衣服,来看一下两者的差别。面向过程:C++是基于面向对象的,关注的是对象,将一件事情拆分成不同的对象,靠对象之间的交互完成。

2024-05-21 10:46:47 977

原创 c++基础(一)

定义命名空间,需要使用到。

2024-05-19 21:57:04 973

原创 笔试集训4

解题思路:首先要明确,当有一串字符串之后,要想实现重排的话,就相当于把每个位置上的值重新填写,那么通过观察题目发现,能不能重排一定是取决于字符个数最多的值的。为什么呢?看如下例子:a a b b c c c c c c;当你总共就只有10个数的时候,那么就是说你只需要把这字符最多的c解决了,a和b自然也就被解决了。

2024-04-30 15:54:28 655

原创 笔试训练集3

解题思路:第一想法就是枚举出所有的情况。以示例为例子,所以就是六个里面选3个,那就是有20种,但是有10种事重复的,这样子就只需要枚举出10种情况就行了。判断这10种能不能组成三角形就可以了。但是这样的话有点麻烦,那么有没有更好的办法呢?所以联想到了能不能先排序,然后再选棍子进行拼成三角形呢?是可以的,因为题目的要求与数字的顺序没有关系,所以不影响最终的结果。排序之后,从小到大,然后也是10种情况。但是仔细观察就会发现是可以简化的。如下所示。

2024-04-27 15:48:14 579

原创 笔试记录--2

约瑟夫环问题

2024-04-20 15:29:52 574 1

原创 笔试记录集---1

描述Fibonacci数列是这样定义的:F[0] = 0F[1] = 1for each i ≥ 2: F[i] = F[i-1] + F[i-2]因此,Fibonacci数列就形如:0, 1, 1, 2, 3, 5, 8, 13, ...,在Fibonacci数列中的数我们称为Fibonacci数。给你一个N,你想让其变为一个Fibonacci数,每一步你可以把当前数字X变为X-1或者X+1,现在给你一个数N求最少需要多少步可以变为Fibonacci数。输入描述:输入为一个正整数N(1 ≤

2024-04-19 11:41:15 654 1

空空如也

空空如也

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

TA关注的人

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