
C++
文章平均质量分 60
无敌小君君
这个作者很懒,什么都没留下…
展开
-
【C++】十、文件操作知识点
文件操作程序运行时产生的数据都属于临时数据,程序一旦运行结束都会被释放通过文件可以将数据持久化C++中对文件操作需要包含头文件 < fstream >文件类型分为两种:文本文件 - 文件以文本的ASCII码形式存储在计算机中二进制文件 - 文件以文本的二进制形式存储在计算机中,用户一般不能直接读懂它们操作文件的三大类:ofstream:写操作ifstream: 读操作fstream : 读写操作...原创 2021-02-04 11:16:09 · 97 阅读 · 0 评论 -
【C++】九、类和对象(多态)知识点
1、多态多态分为两类静态多态: 函数重载和运算符重载属于静态多态,复用函数名动态多态: 派生类和虚函数实现运行时多态静态多态和动态多态区别:静态多态的函数地址早绑定 - 编译阶段确定函数地址动态多态的函数地址晚绑定 - 运行阶段确定函数地址class Animal{public: //Speak函数就是虚函数 //函数前面加上virtual关键字,变成虚函数,那么编译器在编译的时候就不能确定函数调用了。 virtual void speak()//变为虚函数,就能地址原创 2021-02-04 10:46:35 · 133 阅读 · 0 评论 -
【C++】九、类和对象(继承)知识点
1、继承下级别的成员除了拥有上一级的共性,还有自己的特性。这个时候我们就可以考虑利用继承的技术,减少重复代码。继承的好处:可以减少重复的代码class A : public B;class 子类: 继承方式 父类A 类称为子类 或 派生类B 类称为父类 或 基类派生类中的成员,包含两大部分:一类是从基类继承过来的,一类是自己增加的成员。从基类继承过过来的表现其共性,而新增的成员体现了其个性。继承方式一共有三种:公共继承保护继承私有继承保护权限类内可访问,类原创 2021-02-02 19:32:15 · 198 阅读 · 0 评论 -
【C++】九、类和对象(封装)知识点
封装、对象的初始化和清理1、构造函数和析构函数构造函数和析构函数会被编译器自动调用,完成对象初始化和清理工作。对象的初始化和清理工作是编译器强制要我们做的事情,因此如果我们不提供构造和析构,编译器会提供。编译器提供的构造函数和析构函数是空实现。2、C++中拷贝构造函数调用时机通常有三种情况使用一个已经创建完毕的对象来初始化一个新对象值传递的方式给函数参数传值以值方式返回局部对象class Person {public: Person() { cout << "无参构造函原创 2021-02-02 10:23:03 · 299 阅读 · 3 评论 -
学习
https://www.cnblogs.com/shilinnpu/p/8945637.htmlhttps://www.cnblogs.com/QG-whz/p/5136883.html原创 2021-01-24 10:20:49 · 143 阅读 · 0 评论 -
【C++】八、内存分区、引用、函数提高知识点
1、内存分区:C++程序在执行时,将内存大方向划分为4个区域代码区:存放函数体的二进制代码,由操作系统进行管理的全局区:存放全局变量和静态变量以及常量栈区:由编译器自动分配释放, 存放函数的参数值,局部变量等堆区:由程序员分配和释放,若程序员不释放,程序结束时由操作系统回收内存四区意义:不同区域存放的数据,赋予不同的生命周期, 给我们更大的灵活编程程序运行前 在程序编译后,生成了exe可执行程序,未执行该程序前分为两个区域代码区: 存放 CPU 执行的机器指令(二进制)原创 2021-01-23 19:33:09 · 368 阅读 · 0 评论 -
【C++】七、结构体知识点
1、结构体定义及创建变量结构体定义:struct 结构体名 { 结构体成员列表 };创建变量及赋值:struct 结构体名 变量名 赋值:用"."访问属性赋值struct 结构体名 变量名 = { 成员1值 , 成员2值...}struct 结构体名 数组名[元素个数] = { {} , {} , ... {} }定义结构体时顺便创建变量2、结构体指针及用指针访问属性//结构体定义struct student{ //成员列表 string name; //姓名 int a原创 2021-01-22 16:28:28 · 213 阅读 · 0 评论 -
【C++】六、指针知识点
1、指针变量和普通变量的区别指针变量:int *、char *、float *、double *……普通变量存放的是数据,指针变量存放的是地址可以通过 &符号 获取变量的地址指针变量可以通过*操作符,操作指针变量指向的内存空间,这个过程称为解引用2、指针所占内存: 所有指针类型在32位操作系统下是4个字节,在64位操作系统下占8个字节。int main() { int a = 10; int * p=&a; cout << sizeof(p) <原创 2021-01-21 22:51:35 · 209 阅读 · 0 评论 -
【C++】五、函数知识点
1、实参和形参① 形参出现在函数定义的地方,多个形参之间以逗号分隔,形参规定了一个函数所接受数据的类型和数量。实参出现在函数调用的地方,实参的数量与类型与形参一样,实参用于初始化形参。② 形参变量只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元。因此,形参只有在函数内部有效。 函数调用结束返回主调函数后则不能再使用该形参变量。形参和函数体内部定义的变量统称为局部变量,仅在函数的作用域内可见,同时局部变量还会隐藏在外层作用域中同名的其他所有声明(局部变量和全局变量可以重名)。静态原创 2021-01-21 21:00:55 · 154 阅读 · 0 评论 -
【C++】四、数组知识点
1、一维数组特点:①数组中的每个数据元素都是相同的数据类型②数组是由连续的内存位置组成的数组定义方式:1. 数据类型 数组名[ 数组长度 ]; 2. 数据类型 数组名[ 数组长度 ] = { 值1,值2 ...};3. 数据类型 数组名[ ] = { 值1,值2 ...}; //第二种方法:数据类型 数组名[元素个数] = {值1,值2 ,值3 ...}; //如果{}内不足10个数据,剩余数据用0补全 int score2[10] = { 100, 90,80,70,60,50原创 2021-01-21 19:45:36 · 271 阅读 · 0 评论 -
【C++】三、程序流程结构知识点
1、三目运算符作用: 通过三目运算符实现简单的判断语法:表达式1 ? 表达式2 :表达式3解释:如果表达式1的值为真,执行表达式2,并返回表达式2的结果;如果表达式1的值为假,执行表达式3,并返回表达式3的结果。int main() { int a = 10; int b = 20; int c = 0; c = a > b ? a : b; cout << "c = " << c << endl;//c=20 //C++中三目运算符返回的是原创 2021-01-21 19:10:52 · 211 阅读 · 0 评论 -
【C++】二、数据类型与运算符知识点
1、字符型变量:C和C++中字符型变量只占用1个字节。字符型变量并不是把字符本身放到内存中存储,而是将对应的ASCII编码放入到存储单元。int main() { char ch = 'a'; cout << ch << endl; cout << sizeof(char) << endl;//1 cout << (int)ch << endl; //查看字符a对应的ASCII码 ch = 97; //可以直接用A原创 2021-01-21 15:31:30 · 255 阅读 · 0 评论 -
【C++】一、const和#define的区别
【C++】一、const和#define的区别1、 类型检查define – 无类型,不进行类型安全检查,可能会产生意想不到的错误,可能会导致边缘效应。const – 有数据类型,编译时会进行类型检查,可以避免一些低级的错误。如:#include<iostream>using namespace std;#define N 2+3//我们预想的N值是5//正确写法 #define N (2+3)int main() { double a; a = (float)N / (f原创 2021-01-21 14:38:29 · 605 阅读 · 0 评论