摘要:
###概念 模板作用强大且复杂,由于水平有限本文只做简单讲解和使用。模板的作用就是实现类型通用,降低代码的冗余度模板可以为一种算法定义适用不同类型的版本,实现机制: 1.使用类型参数摆脱类型的限制,丧失了一定的类型安全; 2.模板要实例化才能使用,实例化由编译器来实现的。 ###分类 ####函数模 阅读全文
摘要:
###原理和机制 C的运算符默认只支持基本类型,但是C提供了实现类类型使用运算符的语法也就是运算符的重载。运算符的重载本质上是通过函数来实现,将类类型的运算过程写成一个特殊的函数,当对应类型遇到该运算时自动调用该函数。实现运算符的重载既可以通过成员函数,也可以使用全局函数来实现,其主要功能是进行对象 阅读全文
摘要:
###封装 该隐藏的数据私有化(private),该公开的公有化(public),目的是为了分工合作,有助于数据的安全性和使用的方便性,防止不必要的扩展。 ###继承(inheritance) ####1.作用 因为子类继承了父类的成员,能够实现代码和数据的复用,能在已有的代码和数据的基础上进行扩展 阅读全文
摘要:
###析构函数 ####1.概念 析构函数是一个特殊的函数,函数名和类名相同,但是前面要加一个~,不能有参数,也没有返回值,析构函数在对象被销毁时自动调用一次,如果类中没有析构函数,编译器会自动生成一个什么也不做的析构函数; ####2.用法 在销毁对象时需要释放资源,比如动态内存,硬件设备...; 阅读全文
摘要:
###概念 一切都可以是对象,一个程序可以由一组对象组成的一组整体,程序的功能就是通过对象之间传递消息来实现的。如上图所示,比如有一个人在家里,需要坐飞机到达某一个地方,那他需要经历的步骤可能为,走到公交站--》坐公交车到地铁站-》坐地铁到机场--》坐飞机到达目的地。 如果使用面向过程的编程方法就是 阅读全文
摘要:
###C的编译环境 1.在虚拟机中使用g,可使用如下命令: 先测试有没有安装g++ g++ -v 安装 sudo apt-get update sudo apt-get install g++ g++ -v //用来检查是否安装成功 g是c的一种编译器,需要安装,g++的用法和gcc一致,需要更换下 阅读全文
摘要:
###概述 如上图所示,裸机也叫做前后台系统,中断属于前台系统,while(1)循环中的叫做后台系统,任务是顺序执行的。而RTOS(Real Time OS)即实时操作系统。在RTOS支持的系统中,每个任务均有一个优先级(类似前面章节的中断抢占优先级),而当前正在运行的任务永远都是已经就绪的最高优先 阅读全文
摘要:
###概述 为了方便阅读,可以先阅读本人《STM32F407 独立看门狗 (IWDG)》 https://www.cnblogs.com/ding-ding-light/p/14472107.html 与独立看门狗不同的是,窗口看门狗没有独立的时钟源,它是挂载在APB1下的一个片上外设,与独立看门狗 阅读全文
摘要:
###概述 在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成各种寄存器和内存的数据混乱,会导致程序指针错误,不在程序区,取出错误的程序指令等,都会陷入死循环,程序的正常运行被打断,由单片机控制的系统无法继续正常工作,会造成整个系统的陷入停滞状态,发生不可预料的后 阅读全文
摘要:
###概述 DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与长期的稳定性。传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个8位单片机相连接。因此该产品具有抗干扰能力强、性价比高等优点。 ### 阅读全文