- 博客(7)
- 收藏
- 关注
原创 【C++入门】vector类
1. vector是表示可变大小数组的序列容器。2. 就像数组一样,vector也采用的连续存储空间来存储元素。也就是意味着可以采用下标对vector的元素 进行访问,和数组一样高效。但是又不像数组,它的大小是可以动态改变的,而且它的大小会被容器自 动处理。3. 本质讲,vector使用动态分配数组来存储它的元素。当新元素插入时候,这个数组需要被重新分配大小 为了增加存储空间。其做法是,分配一个新的数组,然后将全部元素移到这个数组。
2024-07-25 15:58:04
660
原创 【C++入门】string类
目录1. 为什么学习string类?1.1 C语言中的字符串1.2 题型需要2. 标准库中的string类2.1 string类(了解)2.2 string类的常用接口说明(注意下面只讲解最常用的接口)2.2.1 string类对象的常见构造2.2.2 string类对象的容量操作2.2.3 string类对象的访问及遍历操作2.2.4 string类对象的修改操作2.2.5 string类的非成员函数2.2.6. vs和g++下string结构的说明2.2.7 牛刀小试3. string类的模拟实现3.1
2024-05-03 02:16:20
978
1
原创 【C++入门】模板
class 类模板名// 类内成员定义// 动态顺序表// 注意:Vector不是具体的类,是编译器根据被实例化的类型生成具体类的模具public :, _size(0){}// 使用析构函数演示:在类中声明,在类外定义。~Vector();// 注意:类模板中函数放在类外进行定义时,需要加模板参数列表if(_pData)
2024-04-08 22:23:24
658
1
原创 【C++入门】类和对象(完)
比如上述Time类和Date类,在Time类中声明Date类为其友元类,那么可以在Date类中直接 访问Time类的私有成员变量,但想在Time类中访问Date类中私有的成员变量则不行。3. 经过2之后,在计算机中就有了一个洗衣机类,但是洗衣机类只是站在计算机的角度对洗衣 机对象进行描述的,通过洗衣机类,可以实例化出一个个具体的洗衣机对象,此时计算机才 能洗衣机是什么东西。友元函数可以直接访问类的私有成员,它是定义在类外部的普通函数,不属于任何类,但需要在 类的内部声明,声明时需要加friend关键字。
2024-03-07 22:06:01
827
原创 【C++入门】类的6个默认成员函数
如果一个类中什么成员都没有,简称为空类。空类中真的什么都没有吗?并不是,任何类在什么都不写时,编译器会自动生成以下6个默认成员 函数。默认成员函数:用户没有显式实现,编译器会生成的成员函数称为默认成员函数。目录编辑1. 构造函数1.1概念1.2 特性2. 析构函数2.1 概念2.2 特性3. 拷贝构造函数3.1 概念3.2 特征编辑4. 赋值运算符重载4.1 运算符重载4.2 赋值运算符重载1. 赋值运算符重载格式
2024-03-06 21:03:19
913
原创 【C++入门】类与对象的认识
class为定义类的关键字,ClassName为类的名字,{}中为类的主体,注意类定义结束时后面分 号不能省略。类体中内容称为类的成员:类中的变量称为类的属性或成员变量;类中的函数称为类的方法或者 成员函数。类的两种定义方式:1. 声明和定义全部放在类体中,需注意:成员函数如果在类中定义,编译器可能会将其当成内 联函数处理。2. 类声明放在.h文件中,成员函数定义放在.cpp文件中,注意:成员函数名前需要加类名:: 一般情况下,更期望采用第二种方式。
2024-03-02 21:23:20
1039
原创 排序算法——希尔排序(shell排序)
一 希尔排序的原理1.基本思想基本思想希尔排序(Shell Sort)是插入排序的一种。也称缩小增量排序,是直接插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法。该方法因DL.Shell于1959年提出而得名。希尔排序是记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,这一遍恰好是直接插入排序,完成后算法便终止。2.希尔排序的优劣逆序有序的数组排序时,时间复杂度为O ( n 2 ) O(n^
2024-02-03 16:03:02
539
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人