摘要:
【释放内存】 本质:标识符放弃对该内存的占有权。即“释放内存”就是释放占有权。 若该内存是栈内存,当所有标识符都放弃,那么系统自动重获占有权。内存依然存在,地址、值都未改变。 若该内存是堆内存,当所有标识符都放弃,不delete,那么系统也无法拥有占有权。所以delete让系统重获占有权。内存依然存 阅读全文
摘要:
相机SDK中一般有这样的回调:当帧采集完毕,自动调用回调函数。 回调函数用于通知机制:当某一事件发生时,如果使用者注册过了回调函数,则会自动执行回调函数中的内容。 网上很多回调函数的内容都是简单的使用下,没有太多关于通知机制的内容,于是找了一个案例 //sdk.h typedef void(*REC 阅读全文
摘要:
逐步更新中~~~,参考书籍《C++并发编程实战(第2版)》,不照搬书,只写理解感悟。 引入头文件 #include <thread> 线程启动 std::thread t(my_func); 若需等待线程执行完毕,才继续之后的代码,用join if (t.joinable()) { t.join() 阅读全文
摘要:
记录些自己用到的。 场景类(QGraphicsScene类):放置图元的容器,本身不可见。 视图类(QGraphicsView类):可视的窗口,用于显示场景中的图元。 图元类(QGraphicsItem类):各个图元的基类。直线(QGraphicsLineItem)、椭圆(QGraphicsElli 阅读全文
摘要:
【说明】 1、若传递的是指针,则内存共享,其一改变,另一个也被改变。为了避免输入被更改,做了些处理。如QImage2Mat中使用了两个变量mat, out。 2、与QImage相关的转换存在宽度方向4字节对齐情况,也做了些处理。如QImage2HObject中让宽度变为4的整数倍。 3、尽量避免ne 阅读全文
摘要:
三种通信方式:Modbus TCP/IP通讯,Modbus RTU通讯,Modbus ASCII通讯 【Modbus TCP/IP】 硬件接口为RJ45,即网口。 连接时注意设置为同一网段和端口号: 一对一时,一根网线直连即可。 一对多时,用工业以太网交换机将所有设备接入交换机,通过不同的IP地址访 阅读全文
摘要:
万物皆内存,内存有两个东西:地址、值。 普通变量、引用变量、指针变量,二级指针变量,数组,指针数组...等等,皆内存。 【指针】 int x = 10; //变量 int* pX = &x; //指针变量 int** ppX = &pX; //二级指针变量 //地址,值 std::cout << & 阅读全文
摘要:
【概念】 数组是一种线性表数据结构,它用一组连续的内存空间,来存储一组具有相同类型的数据。 内存有两个东西:值、地址(首地址、整个地址等)。 【值与地址】 以10个int元素的数组为例,int [] a = new int[10],计算机给数组分配了一块连续的空间,100-139,其中内存的起始地址 阅读全文
摘要:
#include<fstream> //for ifstream、ofstream template<typename OB> inline void saveObject(const char*filename, OB & object,int length) //传入要保存的对象引用 { std 阅读全文
摘要:
与数组一样,结构体的指针指向首地址。 【数组 与 struct 互相赋值】 将数组中元素赋值给struct中元素(类型需一致,否则保持默认值),若数组元素少,struct中未被赋值的保持默认值。若数组元素多,对应位置的元素会赋值给struct。 #include<iostream> struct M 阅读全文