自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 设计模式

设计模式 注:将不断更新设计模式: 单例模式: 链接: link.

2020-08-07 16:03:47 113

原创 C++运算符的重载

运算符重载基本概念 运算符重载,就是对已有的运算符重新进行定义,赋予其另一种功能,以适应不同的数 据类型。 运算符重载(operator overloading)只是一种”语法上的方便”,也就是它只是另一 种函数调用的方式。 在 c++中,可以定义一个处理类的新运算符。这种定义很像一个普通的函数定义,只 是函数的名字由关键字 operator 及其紧跟的运算符组成。差别仅此而已。它像任何其他函 数一样也是一个函数,当编译器遇到适当的模式时,就会调用这个函数。 语法: 定义重载的运算符就像定义函数,只是该函数

2020-08-06 15:35:51 133

原创 C++9

C++笔记9 1类型转换 1.1静态转换 static_cast 1.2使用方式 static_cast< 目标类型>(原始数据) 1.3可以进行基础数据类型转换 1.4父与子类型转换 1.5没有父子关系的自定义类型不可以转换 1.6动态转换 dynamic_cast 1.7不可以转换基础数据类型 1.8父子之间可以转换 1.8.1父转子 不可以 1.8.2子转父 可以 1.8.3发生多态 都可以 1.9常量转换 const_cast 1.10不能对非指针或者非引用进行转换 1.11重新解释转

2020-08-06 15:17:08 333

原创 C++8

C++复习day8 1函数模板基本使用 1.1template < class / typename T> 告诉编译器紧跟的代码里出现T不要报错 1.2mySwap( T &a T &b ) 类型也需要传入 ,类型参数化 1.3myswap(a,b) 自动类型推导 按照a b的类型 来替换T 1.4myswap(a,b) 显示指定类型 2函数模板与普通函数的区别以及调用规则 2.1区别 普通函数可以进行隐式类型转换 模板不可以 2.2调用规则 2.2.1c++编译器优

2020-08-06 15:14:57 212

原创 C++7

C++复习day7 1静态联编和动态联编 1.1多态分类 1.1.1静态多态 函数重载 1.1.2动态多态 虚函数 继承关系 1.2静态联编 1.2.1地址早绑定 编译阶段绑定好地址 1.3动态联编 1.3.1地址晚绑定 ,运行时候绑定好地址 1.4多态 1.4.1父类的引用或指针指向子类对象 2多态原理解析 2.1当父类中有了虚函数后,内部结构就发生了改变 2.2内部多了一个 vfprt 2.2.1virtual function pointer 虚函数表指针 2.2.2指向 vftable 虚函数

2020-08-06 15:13:43 120 1

原创 C++6

C++复习day6 1关系运算符重载 1.1自定义数据类型 不会内部做 比较 == != 1.2所以要重载 == != 2函数调用运算符重载 2.1() 仿函数 对象() 看似像函数调用 2.2MyAdd() 匿名对象 3不要重载 && 和 || 3.1本身有短路特性我们无法去实现这种特性 3.2所以不要重载 4强化训练 –字符串封装 4.1cout 输入 自定义的字符串 4.2cin 让用户输入字符串内容 4.3重载 = 运算符 4.4重载 + 运算符 4.5重载 [] 运算符

2020-08-06 15:11:22 214

原创 C++5

C++复习day5 1加号运算符重载 1.1如果想让自定义数据类型 进行+运算,那么就需要重载 + 运算符 1.2在成员函数 或者 全局函数里 重写一个+运算符的函数 1.3函数名 operator+ () {} 1.4运算符重载 也可以提供多个版本 2左移运算符重载 2.1不要随意乱用符号重载 2.2内置数据类型 的运算符不可以重载 2.3cout << 直接对Person自定义数据类型 进行输出 2.4写到全局函数中 ostream& operator<< ( ostre

2020-08-06 15:09:06 412

原创 C++4

#C++复习day4 1静态成员变量和静态成员函数 1.1静态成员变量 1.1.1编译阶段分配内存 1.1.2所有对象共享数据 1.1.3通过对象访问、通过类名访问 1.1.4有权限控制 1.1.5类内声明 类外初始化 1.2静态成员函数 1.2.1可以访问静态成员变量,不可以方法普通成员变量 1.2.2普通成员函数 都可以访问 1.2.3静态成员函数也有权限 1.2.4可以通过对象访问,也可以通过类名进行访问 2单例模式案例 – 主席 2.1目的 为了让类中只有一个实例,实例不需要自己释放 2.2将 默认

2020-08-06 15:05:40 116

原创 C++3

C++复习day03 2.2三种关系判断 2.3分文件编写 2.3.1.h中写类的成员函数声明 2.3.2.cpp中写成员函数实现 3对象的初始化和清理 3.1构造函数 3.1.1没有返回值 没有void,类名相同,可以发生重载,可以有参数 3.2析构函数 3.2.1没有返回,没有void ,函数名称: ~类名,不可以发生重载,不可以有参数 3.3系统会默认调用 构造函数和析构函数,而且只会调用一次 3.4如果程序员没有提供构造和析构,系统会默认提供,空实现 4构造函数的分类及调用 4.1按照参数分类 4.

2020-08-06 15:03:44 113

原创 C++2

C++复习day2 1设计类 抽象类 1.1class 类名{ 1.2public 公共权限 1.3 设置 成员属性 1.4 设置 成员函数 1.5 } 1.6使用类 创建对象 实例化对象 1.7 类名 对象名 1.8通过对象 来设置属性 调用成员函数 1.9 类和对象 关系??? 1.9.1类是对对象的抽象 1.9.2对象是对类的实例 2内联函数 解决宏缺陷问题 2.1给编译器一个建议,加上关键字,编译器不一定按照内联处理 2.2不加关键字,也许编译器还偷摸的给你加inline 2.3成员函数 默认

2020-08-06 15:01:27 146

原创 C++1

#C++复习day1 1#include 1.1using namespace std; 1.2cout << “hello …” << endl; 1.3system(“pause”) 1.4retrun 0 2::双冒号作用域运算符 2.1全局作用域 直接加:: 3namespace 命名空间 3.1用途 解决名称冲突问题 3.2必须在全局作用域下声明 3.3命名空间下可以放入 函数、变量、结构体、类… 3.4命名空间可以嵌套命名空间 3.5命名空间是开放的,可以随时加入新的成

2020-08-06 14:57:15 129

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除