- 博客(18)
- 收藏
- 关注

原创 基于ESP8266 MQTT的按键报警
硬件要求: 1.esp8266-12E开发板 2.自复位按键若干 3.led灯及若干220欧电阻软件要求: arduino ide安装ESP8266开发板软件包使用1.6.4及以上版本的Arduino, 打开Arduino IDE,打开 文件->首选项 在 附加开发板管理器网址 一栏写入:http://arduino.e...
2019-10-16 13:58:53
886
原创 C++day12设计模式部分(上)
1.设计模式的基本原则1.开放封闭原则:类的改动是通过增加代码进行的,而不是修改源代码2.依赖倒置原则:依赖于抽象(接口),不要依赖具体的实现(类),也就是针对接口编程3.迪米特法则:一个软件实体应当尽可能少地与其他实体发生互相作用4.接口隔离原则:不应该强迫客户的程序依赖他们不需要的接口方法。5.里式替换原则:任何抽象类出现的地方都可以用他的实现类进行替换。6.合成复用原则:如果使用继承,会导致...
2018-03-29 11:48:28
134
原创 C++day11STL基础知识
1.函数对象和谓词class Show{public: Show() { count = 0; } void operator()(int a) { cout << a << " "; count++; } void show () { cout << "元素个数为 : " << count <&l
2018-03-29 10:07:09
177
原创 C++day10STL标准模板库
这部分比较偏向算法的使用,固定的模板,需要向里面填入参数,所以上代码与注释理解更为方便1.vector(容器)#include <iostream>#include <vector>using namespace std;void printV(vector<int>::iterator begin, vector<int>::ite...
2018-03-29 10:02:39
204
原创 c++基础知识day9
1.异常在类层次间的使用//案例:设计一个数组类 MyArray,重载[]操作,// 数组初始化时,对数组的个数进行有效检查 // index<0 抛出异常eNegative // index = 0 抛出异常 eZero // 3)index>1000抛出异常eTooBig // 4)index<10 抛出异常eTooSmall // 5)eSize类是以上类的...
2018-03-27 15:52:07
212
原创 C++基础知识day8
1.类模板// 模板类派生类// 1、派生一个具体的类class B:public A<int>{public: B(int a, int b):A(a) { }private: int b;};// 2、派生一个模板类template <typename T, typename T2>class C:public A<T>{public: C(T a, T2 ...
2018-03-27 15:47:31
108
原创 c++基础知识day7(下)
7.函数模板// 函数的形参:类型 变量, // 参数传递 =====> 将实参的传递给形参,做的是变量的传递// ====> 形参 类型 能不能传递?// ====> 形参 类型参数化 =====> 函数模板// 模板声明:// template 用来声明模板用的// typename 是用来告诉编译器 用来代替类型的名字template <ty...
2018-03-23 14:52:01
134
原创 c++基础知识day7(中)
4.用基类指针操作派生类数组// 基类指针指向派生类数组 Parent *p = c; // 基类指针和派生类指针步长不一样,用基类指针操作派生类数组的时候会产生问题//for (int i = 0; i < 5; i++) // p[i].show(); double *pd = (double*)1000; double *p1 = pd + 1; int p2 = (int)p...
2018-03-23 14:44:49
116
原创 C++基础知识day7(上)
1.虚析构函数#include <iostream>using namespace std;// 基类class A{public: A() { cout << "A 的构造函数" << endl; } virtual ~A() { cout << "A 的析构函数" << endl; }
2018-03-23 14:35:25
119
原创 c++基础知识day6
1.多继承的概念多继承:一个类允许有多个直接基类//多继承语法:class A:访问控制符 基类1,访问控制符 基类2,。。。。class Child:public Parent1, public Parent2{public: // 1、如果基类没有无参构造,需要在对象初始化列表中显示调用基类的构造函数 // 2、基类的构造顺序和在对象列表中调用顺序无关,和在继承时候继承顺序有关 Child()...
2018-03-23 10:43:12
116
原创 C++基础知识day5(下)
1.类的对象模型#include <iostream>using namespace std;class A{public: int a1; int a2;};class B:public A{public: int b1; int b2;};int main(){ B vb; vb.a1 = 1; vb.a2 = 2; vb.b1 = 3; vb.b2 = 4; cout <&...
2018-03-21 16:15:43
116
原创 c++基础知识day5(上)
1.赋值运算符// 赋值运算符:类名& operator=(const 类名& 变量名) Student& operator=(const Student &s) { id = s.id; name = s.name; return *this; }// 赋值 operator=(s3, s1) // s3.operator=(s1) // 如果一个类没有写...
2018-03-21 15:59:52
137
原创 c++基础知识day4(下)
5.友元函数和友元类// 友元函数:如果一个函数 func(), 它是类A 的友元函数,该函数可以通过A的对象使用A 的所有成员(包括私有成员)// 定义方式:// 1、在类中写出函数声明// 2、在函数声明前加一个关键字 friend// 特点:// 1、友元函数不是类的内部函数,是一个外部函数,所以没有this 指针// 2、友元函数的声明不受访问控制符影响,可以放到类的任意位置// 3、友...
2018-03-21 15:18:19
143
原创 c++基础知识day4(上)
1.对象初始化列表// 一个类B中 有另一个类A的对象,A中没有无参构造// 不能直接定义A的对象,需要某种机制对A的对象进行初始化// ===> 对象初始化列表:用来对对象进行初始化// 构造函数后面加 :后面是要初始化的对象// 1、对象初始化列表比当前对象的构造函数先执行// 2、对象在对象初始化列表中的顺序和构造顺序无关,和在类中的声明顺序有关// const常量也要放到对象初始化列...
2018-03-21 15:01:29
160
原创 C++基础知识day3
1.重载函数// 函数重载:函数名相同,可以有不同的定义 实现形式不同void swap_int(int &a, int &b){ int tmp = a; a = b; b = tmp;}void swap_double(double &a, double &b){ double tmp = a; a = b; b = tmp;}void swap_char(c...
2018-03-19 18:49:55
127
原创 C++基础知识day2.1
9.内联函数与宏函数// 宏// 1、定义宏常量 ------> 推荐用 const常量 代替宏常量// 2、定义宏函数 ------> 推荐用 内联函数 来代替宏函数// 宏函数:// 在预处理期间进行处理,做的完全替换,可以节省 函数 跳转、入栈、出栈等的 开销,提升程序运行效率// 空间 换 时间// 宏函数 使用可能并不会达到预期的效果 宏函数不会对参数类型进行检测...
2018-03-19 14:46:35
117
原创 C++基础知识 day2
1.定义和声明// C++可以在任意位置定义变量,尽量减少变量的作用域 -----> 尽可能延迟变量的定义 -----> 什么时候用,什么时候定义2.寄存器变量// 申请一个寄存器变量,变量不存在内存中, // 而是直接存在寄存器中 // 请求,请求不一定能够成功register int b = 20;// C++中 如果对一个寄存器变量进行取地址操作 // register 声明将变...
2018-03-19 14:43:18
139
原创 c++基础知识day1
1.打开标准命名空间#include <iostream>;using namespace std;2.cout 标准输出变量,不是函数,功能类似printf,向屏幕打印数据<< 左移操作符,一旦和 cout结合到一块 ---> 代表数据流向,数据从右边流向左边 右边是字符串 "hello world", 左边是cout,也就是屏幕---> "hello wor...
2018-03-19 14:27:56
246
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人