C++
文章平均质量分 82
C++核心编程知识点总结
海岸星的清风
这个作者很懒,什么都没留下…
展开
-
论C++的自我修养之「模板」
文章目录1.1 模板的概念1.2 函数模板1.2.1 函数模板语法1.2.2 函数模板注意事项1.2.3 函数模板案例1.2.4 普通函数与函数模板的区别1.2.5 普通函数与函数模板的调用规则1.2.6 模板的局限性1.3 类模板1.3.1 类模板语法1.3.2 类模板与函数模板区别1.3.3 类模板中成员函数创建时机1.3.4 类模板对象做函数参数1.3.5 类模板与继承1.3.6 类模板成员函数类外实现1.3.7 类模板分文件编写1.3.8 类模板与友元1.3.9 类模板案例 1.1 模板的概念 模板原创 2022-03-20 13:58:06 · 88 阅读 · 0 评论 -
论C++的自我修养(1)基础知识
目录一、C++定义**常量**两种方式二、三目运算符三、各类语句break语句continue语句goto语句四、冒泡排序五、指针(重要)六、内存分区七、引用 一、C++定义常量两种方式 #define 宏常量: #define 常量名 常量值 通常在文件上方定义,表示一个常量。 const修饰的变量 const 数据类型 常量名 = 常量值 通常在变量定义前加关键字const,修饰该变量为常量,不可修改。 #define day 7; const int month = 12; 二、三目运算符原创 2021-12-07 11:53:33 · 74 阅读 · 0 评论 -
论C++的自我修养(2)封装、对象的初始化和清理
文章目录封装struct和class区别成员属性设置为私有对象的初始化和清理构造函数和析构函数构造函数的分类及调用拷贝构造函数调用时机构造函数调用规则深拷贝与浅拷贝(常考)初始化列表类对象作为类成员静态成员 C++面向对象的三大特性为:封装、继承、多态。 封装 封装的意义: 将属性和行为作为一个整体,表现生活中的事物: 语法: class 类名{ 访问权限: 属性 / 行为 }; 将属性和行为加以权限控制: 访问权限有三种: public 公共权限 protected 保护权原创 2022-02-12 18:36:05 · 1370 阅读 · 0 评论 -
论C++的自我修养(3)C++对象模型和this指针
文章目录C++对象模型和this指针成员变量和成员函数分开存储this指针空指针访问成员函数const修饰成员函数 C++对象模型和this指针 成员变量和成员函数分开存储 在C++中,类内的成员变量和成员函数分开存储,只有非静态成员变量才属于类的对象上。 this指针 在C++中成员变量和成员函数是分开存储的,每一个非静态成员函数只会诞生一份函数实例,也就是说多个同类型的对象会共用一块代码。那么问题是:这一块代码是如何区分哪个对象调用自己的呢? C++通过提供特殊的对象指针,this指针,解决上述问题。t原创 2022-02-12 18:38:01 · 58 阅读 · 0 评论 -
论C++的自我修养(4)友元
友元 在程序里,有些私有属性也想让类外特殊的一些函数或者类进行访问,就需要用到友元的技术。友元的目的就是让一个函数或者类访问另一个类中私有成员。 友元的关键字为 friend 友元的三种实现: 全局函数做友元 类做友元 成员函数做友元 全局函数做友元 class Building { //告诉编译器 goodGay全局函数 是 Building类的好朋友,可以访问类中的私有内容 friend void goodGay(Building * building); public: Buildin原创 2022-02-12 18:39:54 · 74 阅读 · 0 评论 -
论C++的自我修养(5)继承
文章目录继承继承的基本语法继承中构造和析构顺序继承同名成员处理方式继承同名静态成员处理方式多继承语法菱形继承 继承 继承是面向对象三大特性之一。 有些类与类之间存在特殊的关系,定义这些类时,下级别的成员除了拥有上一级的共性,还有自己的特性。这个时候我们就可以考虑利用继承的技术,减少重复代码 继承的基本语法 继承的好处:可以减少重复的代码 继承的语法:class 子类 : 继承方式 父类 例如:class A : public B; A 类称为子类 或 派生类 B 类称为父类 或 基类 派生类中的成员,包含两原创 2022-02-12 18:41:20 · 50 阅读 · 0 评论 -
论C++的自我修养(6)多态
文章目录多态多态的基本概念多态案例一-计算器类纯虚函数和抽象类多态案例二-制作饮品虚析构和纯虚析构多态案例三-电脑组装 多态 多态的基本概念 多态是C++面向对象三大特性之一 多态分为两类: 静态多态: 函数重载和运算符重载属于静态多态,复用函数名; 动态多态: 派生类和虚函数实现运行时多态。 静态多态和动态多态区别: 静态多态的函数地址早绑定 - 编译阶段确定函数地址 动态多态的函数地址晚绑定 - 运行阶段确定函数地址 下面通过案例进行讲解多态 class Animal { public:原创 2022-02-12 18:42:15 · 58 阅读 · 0 评论 -
STL核心知识总结(1)常用容器的用法
目 录stringvectordeque容器stackqueuelistset/ multisetmap/ multimap Tips: 在使用容器时,注意要添加相应的头文件,如#include<string>; STL的学习过程本质上就是学习数据结构与算法的过程,使用C++语言将常见的数据结构类型实现出来; 各个容器包含的操作大同小异,一通百通。 string string是一个类,类内部封装了char*,管理这个字符串,是一个char*型的容器。 构造函数 string s1;原创 2022-02-06 22:05:14 · 1610 阅读 · 0 评论 -
C++核心编程总结(2)类和对象
目录一、封装struct和class区别成员属性设置为私有对象的初始化和清理构造函数和析构函数构造函数的分类及调用拷贝构造函数调用时机构造函数调用规则深拷贝与浅拷贝(==常考==)初始化列表类对象作为类成员静态成员C++对象模型和this指针成员变量和成员函数分开存储==this指针==空指针访问成员函数const修饰成员函数友元全局函数做友元类做友元成员函数做友元运算符重载继承继承的基本语法继承中构造和析构顺序继承同名成员处理方式继承同名静态成员处理方式多继承语法菱形继承多态多态的基本概念多态案例一-计算原创 2021-12-07 11:58:55 · 248 阅读 · 0 评论