C++基础
C++
Swichil
为了防止忘记
不定时记录学习的过程
展开
-
C++ 模板: 函数模板
文章目录C++ 模板 函数模板1. 模板的概念2. 函数模板2.1 函数模板语法2.2 函数模板注意事项2.3 函数模板案例C++ 模板 函数模板1. 模板的概念模板就是建立通用的模具,大大提高复用性生活中的模板一寸照片模板 可以将自己头像P到图上PPT模板模板注意的点:• 模板不能直接使用,只是一个框架需要把内容填充好• 模板也不是万能的,是对应一类事情的模板2. 函数模板• C++ 的另一种编程思想成为泛型编程,主要利用的技术就是模板• C++提供了两种模板机制:原创 2020-12-25 16:23:47 · 234 阅读 · 1 评论 -
C++ 文件操作
文件操作文章目录文件操作1文本文件1.1 写文件1.2 读文件2. 二进制文件2.1 写文件2.2 读文件程序运行时产生的数据属于临时数据,程序一旦运行结束都会被释放通过文件可以将数据持久化C++中对文件操作需要包含头文件 文件类型分为两种:文本文件 - 文件以文本的ASCII码形式存储在计算机中二进制文件 - 文件以文本的二进制形式存储在计算机中,用户一般不能直接读懂他们操作文件的三大类:3. ofstream: 写操作4. ifstream:读操作5. fstream:原创 2020-12-10 14:19:55 · 165 阅读 · 0 评论 -
C++ 类和对象(八)多态
C++ 类和对象(八)多态文章目录C++ 类和对象(八)多态1. 多态的原理剖析2. 多态案例一 --- 计算器类3. 纯虚函数和抽象类4. 多态案例二 --- 制作饮品5. 虚析构和虚纯析构6.多态案例三 --- 电脑组装多态是C++面向对象三大特性之一1. 多态的原理剖析多态的分为两类:静态多态: 函数重载和运算符重载属于静态多态,复用函数名多态就是多种形态:函数重载函数名相同但是参数类型,传入顺序,参数个数不同来实现函数的多种表现形态,运算符重载可以实现多种类型的数据进行操作,也表现原创 2020-12-07 14:15:20 · 174 阅读 · 0 评论 -
C++ 类和对象(七) 继承
C++ 类和对象(七)继承继承是面向对象三大特性之一有些类与类存在特殊的关系,比如:我们发现,定义这些类时,下级别的成员除了拥有上一级的共性,还有自己的特性。这个时候就可以考虑利用继承的技术,减少重复代码1. 继承的基本语法看到很多网页都有公共的头,公共的底, 只有中心内容不同。普通实现:#include <iostream>using namespace std;class Java {public: void top() { cout << "t原创 2020-12-07 13:27:05 · 129 阅读 · 0 评论 -
C++类和对象(六) 运算符重载
C++类和对象(六) 运算符重载文章目录C++类和对象(六) 运算符重载1. 加号运算符重载2. 左移运算符重载3. 递增运算符重载4. 赋值运算符重载5. 关系运算符重载6. 函数调用运算符重载概念: 对已有的运算符进行重新定义,赋予其另一种功能, 以适应不同的数据结构1. 加号运算符重载作用:实现两个自定义数据类型的相加的运算编译器提供了一个名称: operator+成员函数运算符重载class Person {public: int m_a; int m_b; //成原创 2020-11-29 19:43:46 · 266 阅读 · 0 评论 -
C++ 类和对象(五) 友元
C++ 类和对象(五) 友元生活中家里又客厅, 卧室客人过来拜访, 客厅可以随便进去,但是卧室是私有的,客人不能进去,只有你自己能进去但是,你可以允许你的好朋友进去在程序中,有些私有属性,普通的函数和类是访问不到的但是如果你想要一些函数和类能访问这就需要用到友元了友元的目的就是让一个函数或者类 能访问一个类中的私有成员友元的关键字为: friend友元的三种实现:全局函数做友元类做友元成员函数做友元1. 全局函数做友元:全局函数可以访问一个类中的私有成员变量frie原创 2020-11-19 23:17:09 · 232 阅读 · 0 评论 -
C++ 类和对象(四)对象模型和this指针
C++ 类和对象(四)对象模型和this指针文章目录C++ 类和对象(四)对象模型和this指针1. 成员变量和成员函数分开存储2. this指针概念3. 空指针访问成员函数4. const 修饰成员函数1. 成员变量和成员函数分开存储C++中,类内的成员变量和成员函数分开存储只有非静态成员变量才属于类的对象上空对象占用的内存空间为: 1C++编译器会给每个空对象也分配一个字节空间,是为了区分空对象占用内存的位置每个空对象也应该有独一无二的内存地址虽然是空对象,也不能跟别人占用同样的位原创 2020-11-17 23:19:19 · 106 阅读 · 0 评论 -
C++ 类和对象(三)初始化列表,类作为对象成员和静态成员
类和对象(三) 初始化列表,类作为对象成员和静态成员1. 初始化列表作用:C++提供初始化列表语法,来初始化属性类似构造函数也是提供初始化属性的作用一样语法:构造函数():属性1(值1), 属性2(值2) ... {}注意:冒号的位置在构造函数的形参列表的后面,然后写属性,赋初值,属性,赋初值示例: //有参构造函数 //Person(int age, string name) //{ // m_age = age; // m_name =原创 2020-11-16 22:57:59 · 344 阅读 · 0 评论 -
C++ 类和对象(二)构造和析构
C++ 类和对象(二) 对象的初始化和清理 —构造和析构文章目录C++ 类和对象(二) 对象的初始化和清理 ---构造和析构1. 构造函数和析构函数1.1 构造和析构的作用:**1.2 构造函数语法:****1.3 析构函数语法:**1.4 **示例:**2. 函数的分类和调用2.1 2种分类方式3. 拷贝构造函• 生活中买电子产品都会有出厂设置,在某一天我们不用的时候会删除自己的信息保证安全• C++中的面向对象来源于生活,类似的每个对象也会有初始设置以及对象销毁前的清理数据设置1. 构造函数和析原创 2020-11-15 12:52:57 · 95 阅读 · 0 评论 -
C++ 类和对象(一): 封装
C++ 类和对象: 封装文章目录C++ 类和对象: 封装封装的意义意义1:意义2:struct 和class的区别成员属性设为私有封装的意义意义1:意义2:struct 和class的区别成员属性设为私有原创 2020-10-30 16:30:05 · 208 阅读 · 0 评论 -
C++ 初识
C++ 初识1.1 变量作用:给一段指定的内存空间起名字,方便操作这段内存在内存中存放的数据有一个十六进制的地址编号可以通过地址编号来找到数据,但是这样很不方便语法:数据类型 变量名 = 初始值;int a = 0;1.2 常量作用:及记录下程序中不可更改的数据方式:#define 宏常量:#define 常量名 常量值#define Max 99const修饰的变量const 数据类型 常量名 = 常量值const int a = 5;数据类型C++在创建一个变量或者常量时原创 2020-10-24 23:51:05 · 71 阅读 · 0 评论 -
C++ vector 中sort的一些用法
C++ vector 中sort的一些用法文章目录C++ vector 中sort的一些用法1.默认排序2.怎么降序呢3.vector 怎么打印里面的元素呢4. 实例参考1.默认排序sort默认是升序排列,从小到大sort(vec.begin(), vec.end());2.怎么降序呢r reverse 的缩写 使逆转sort(vec.rbegin(), vec.rend())3.vector 怎么打印里面的元素呢for(int i = 0; i < vec.size();原创 2020-10-15 13:50:54 · 5122 阅读 · 1 评论