C++
文章平均质量分 77
C++相关知识
流苏狼人
这个作者很懒,什么都没留下…
展开
-
C++基础学习(11)——虚函数
文章目录虚函数虚函数实现多态的条件什么是虚函数虚函数的定义虚函数实现多态的条件特别地何时需要虚函数类成员函数的指针与多态性虚析构函数为什么要有虚析构函数如何定义虚析构函数纯虚函数和抽象类纯虚函数的定义 虚函数 虚函数实现多态的条件 什么是虚函数 被virtual关键字修饰的成员函数就是虚函数,虚函数的作用是实现多态性——以共同的方法对不同的对象采取不同的策略 虚函数只能是类中成员函数,且不能是静态的 虚函数的定义 class 类名{ virtual 返回类型 函数名(形参表); //虚函数 }原创 2021-04-20 11:07:25 · 639 阅读 · 1 评论 -
C++基础学习(9)——类的继承与派生
类的继承与派生 1. 基类与派生类 什么是继承 在一个已存在类的基础上建立一个新的类,已存在的类称为基类(父类),新生成的类称为派生类(子类) 为什么要有继承 类的对象各自封闭,若没有继承,会出现大量重复代码 继承可以吸收现有类的数据和函数来创建新类,并添加新成员增强此类,节约开发时间 继承的种类 单一继承:只有一个基类 多重继承:有两个及以上的基类 在这里插入图片描述 什么是派生 从已有的父类产生一个新的子类称为类的派生。派生类继承基类的所有数据成员和成员函数,且可以对成员作必要的原创 2021-04-09 12:03:40 · 1347 阅读 · 0 评论 -
C++基础学习(8)——友元
文章目录友元1. 什么是友元2. 友元函数3. 友元类 友元 1. 什么是友元 允许一个类将其非公有成员的访问权授予给指定的函数或类 友元的声明只能出现在类定义的内部,通常放在类的开始或结尾 友元不受访问控制的影响 说明: 访问类非公有成员可以有两个用户:类成员和友元 2. 友元函数 友元函数:在一个类以外定义了函数并该类内部用friend声明了定义的函数,此函数就是这个类的友元函数,该函数可访问这个类的私有成员 #include <iostream> #include <原创 2021-03-30 11:26:52 · 84 阅读 · 0 评论 -
C++基础学习(7)——静态成员
文章目录静态成员1. 静态成员的作用与优点2. 静态数据成员3. 静态成员函数 静态成员 1. 静态成员的作用与优点 实现同类多个对象之间数据共享 静态成员的名字在类的作用域中,可以避免与其他类或全局对象的名字冲突 静态成员可以实施封装,可以是私有成员,全局对象不可以 静态成员与特定类关联,结构清晰 2. 静态数据成员 定义形式 class Employee{ private: int empNo; int id; char *name; static int cou原创 2021-03-30 11:00:35 · 112 阅读 · 0 评论 -
C++基础学习(6)——类作用域、对象生命期、const限定
文章目录类作用域、对象生命期、const限定1. 类的作用域3. 常对象、常数据成员、常成员函数常对象常数据成员常成员函数4. 指向对象的常指针、指向常对象的指针、对象的常引用指向对象的常指针指向常对象的指针变量对象的常引用 类作用域、对象生命期、const限定 1. 类的作用域 3. 常对象、常数据成员、常成员函数 既要使数据能在函数间共享,又要保证它不被任意修改,可以使用const限定,把数据定义为只读的 常对象 定义形式 const Data d1; // 类名 const 对象名1(实参列表),原创 2021-03-29 12:39:28 · 74 阅读 · 0 评论 -
C++基础学习(5)——对象数组和对象指针
文章目录五、对象数组和对象指针1. 对象数组的定义和使用2. 指向对象的指针3. 类成员指针数据成员指针成员函数指针使用类成员指针4. this指针 五、对象数组和对象指针 1. 对象数组的定义和使用 将具有相同类类型的对象有序的集合在一起构成了对象数组,以一维对象数组为例,定义形式为: Point points[100]; //类名 对象数组名[常量表达式]; 说明: 在建立对象数组的时候需要调用构造函数,有多少个对象就要调用多少次构造函数 如果对象数组所属类有带参数的构造函数,可用初原创 2021-03-16 12:20:41 · 1010 阅读 · 0 评论 -
C++基础学习(4)——析构函数
文章目录四、析构函数1. 析构函数的定义2. 合成析构函数3. 何时需要编写析构函数4. 构造函数和析构函数的调用次序 四、析构函数 1. 析构函数的定义 析构函数:当对象脱离其作用域时,系统会自动执行析构函数。析构函数往往用来“清理善后”的工作。定义形式如下 ~类名() { 函数体 } 示例 #include <iostream> #include <string.h> using namespace std; class Point { public:原创 2021-03-12 11:17:55 · 403 阅读 · 2 评论 -
C++基础学习(3)——构造函数
文章目录三、构造函数1. 什么是构造函数2. 构造函数的定义定义构造函数构造函数初始化列表3. 构造函数的重载4. 带默认参数的构造函数5. 默认构造函数定义默认构造函数隐式类类型转换6. 复制构造函数与合成复制构造函数复制构造函数合成复制构造函数7. 深复制和浅复制 三、构造函数 1. 什么是构造函数 建立一个对象时通常最需要立即做的就是初始化对象,如对数据成员赋初值,构造函数就是用来在创建对象时初始化对象,为对象赋初值的 类的数据成员不能在类定义时初始化的,因为类定义没有产生实体,而是给出了一个数据类原创 2021-03-11 10:43:17 · 609 阅读 · 0 评论 -
C++基础学习(2)——对象的定义和使用
文章目录2. 对象的定义和使用1. 对象的定义先定义类类型,再定义对象定义类的同时定义对象直接定义对象(不推荐)2. 动态对象的定义与使用如何new一个动态对象如何delete一个对象3. 对象成员的引用通过对象名和对象成员引用运算符(.)引用通过指向对象的指针和指针成员引用运算符(->)引用通过对象的引用变量和对象成员引用运算符(.)引用4. 对象的赋值5. 对象、对象指针或对象引用作为函数的参数和返回值函数的参数可以是对象、对象指针或对象引用函数的返回值可以是对象、对象指针或对象引用 2. 对象的原创 2021-03-09 14:27:16 · 1363 阅读 · 0 评论 -
C++基础学习(1)——类的定义
25.类的定义 1. 定义类 三大特点 抽象:对具体问题概括,抽出一类对象的公共性质 数据抽象 行为抽象 封装:数据成员与行为成员相结合,视为一个整体——类 继承与派生:保持原有特性的基础上,进行更具体的说明 如何定义一个类 类:用户自定义数据类型,定义形式如下class 类名{ 成员列表 }; 说明: 成员列表是类成员的集合,数目可以任意多 大括号{ }是成员列表边界符,与成员列表一起称为类体 类体后面必须用分号(;)结束 类成员可以是数据或函数 所有成员必须在类的内部声明,一旦定义完原创 2021-02-28 12:40:52 · 535 阅读 · 0 评论