[置顶]
TODO-LIST
摘要:
力扣刷题 baicii/leetcode-master: LeetCode 刷题攻略:200道经典题目刷题顺序,共60w字的详细图解,视频难点剖析,50余张思维导图,支持C++,Java,Python,Go,JavaScript等多语言版本,从此算法学习不再迷茫!🔥🔥 来看看,你会发现相见恨晚!
模板
摘要:
本阶段主要针对C++泛型编程和STL技术做详细讲解,探讨C++更深层的使用 模板 模板的概念 模板就是建立通用的模具,大大提高复用性 模板的特点: 模板不可以直接使用,它只是一个框架 模板的通用并不是万能的 函数模板 C++另一种编程思想称为 泛型编程 ,主要利用的技术就是模板 C++提供两种模板机
文件操作
摘要:
程序运行时产生的数据都属于临时数据,程序一旦运行结束都会被释放 通过文件可以将数据持久化 C++中对文件操作需要包含头文件 < fstream > 文件类型分为两种: 文本文件 - 文件以文本的ASCII码形式存储在计算机中 二进制文件 - 文件以文本的二进制形式存储在计算机中,用户一般不能直接读懂
多态
摘要:
多态的基本概念 多态是C++面向对象三大特性之一 多态分为两类 静态多态:函数重载 和 运算符重载属于静态多态,复用函数名 动态多态:派生类和虚函数实现运行时多态 静态多态和动态多态区别: 静态多态的函数地址早绑定 - 编译阶段确定函数地址 动态多态的函数地址晚绑定 - 运行阶段确定函数地址 #in
继承
摘要:
继承是面向对象三大特性之一 有些类与类之间存在特殊的关系 可以发现,定义这些类时,下级别的成员除了拥有上一级的共性,还有自己的特性。 这个时候可以考虑用继承的技术,减少重复代码 继承的基本语法 #include <iostream> using namespace std; class Base {
类与对象_运算符重载
摘要:
运算符重载概念:对已有的运算符重新进行定义,赋予另一种功能,以适应不同的数据类型 加号运算符重载 作用:实现两个自定义数据类型相加的运算 #include <iostream> using namespace std; //成员函数重载 class Person { public: Person o
类与对象_友元
摘要:
在程序里,有些私有属性也想让类外特殊的一些函数或者类进行访问,就需要用到友元 友元的目的就是让一个函数或者类 访问另一个类中的私有成员 友元的关键字为 friend 友元的三种体现 全局函数做友元 类做友元 成员函数做友元 全局函数做友元 把函数声明写进类里,前面加上friend #include
C++对象模型和this指针
摘要:
成员变量和成员函数分开储存 在C++中,类内的成员变量和成员函数分开储存 只有非静态成员变量才属于类的对象上 #include <iostream> using namespace std; class Person { public: int m_A; static int m_B; void f
static 与 const
摘要:
static static局部变量 将一个变量声明为函数的局部变量,那么这个局部变量在函数执行完成之后不会被释放,而是继续保留在内存中 static 全局变量 表示一个变量在当前文件的全局内可访问 static 函数 表示一个函数只能在当前文件中被访问 static 类成员变量 表示这个成员为全类所
类和对象_对象的初始化和清理(下)
摘要:
类与对象作为类成员 C++类中的成员可以是另一个类的对象,我们称该成员为 对象成员 class A{} class B { A a; } B类中对象A作为成员,A为对象成员 那么当创建B对象时,A与B的构造和析构的顺序? 在之前的类里,先构造的后析构,后构造的先析构 #include <iostre