- 博客(60)
- 资源 (1)
- 收藏
- 关注
原创 Qt QLineEdit 限制输入ip格式或判断输入是否为ip 格式
【代码】Qt QLineEdit 限制输入ip格式或判断输入是否为ip 格式。
2024-08-15 14:55:52 522
原创 TCP、RTU、ASCII的区别以及Modbus协议详解
2)而Modbus TCP协议则是在RTU协议上加一个MBAP报文头,由于TCP是基于可靠连接的服务,RTU协议中的CRC校验码就不再需要,所以在Modbus TCP协议中是没有CRC校验码,用一句比较通俗的话说就是:Modbus TCP协议就是Modbus RTU协议在前面加上五个0以及一个6,然后去掉两个CRC校验码字节就OK。综上所述,Modbus协议作为一种简单、可靠、通用的工业通信协议,在工业自动化、楼宇自控、能源管理等领域广受欢迎,在促进设备互联互通、提高系统集成效率等方面发挥着重要作用。
2024-07-04 21:49:08 715
原创 ManageTreeXml类封装QTreeWidget 树形节点信息
【代码】ManageTreeXml类封装QTreeWidget 树形节点信息。
2024-07-04 21:22:21 366
原创 轻松搞定Makefile
Makefile 里如果有多个目标,可以通过make加目标名称来执行指定的。%.o: %.cpp:所有的.o文件都由相同名称的.cpp文件编译生成。"target: main"表示target目标依赖main目标。依赖顺序,如果main 放前面存在找不到.o文件的错误。编译:将源文件(.cpp)编译生成目标文件(.o)目标,如果不是指定目标,则默认选择第一个目标执行。链接:将目标文件(.o)生成可执行文件。target:目标名称,可以随意命名。main为目标名称,可以随意命名。@:表示所有目标的挨个值。
2024-02-20 09:25:03 515 1
原创 轻松搞定CMake
用来生成可执行文件,需要指定生成可执行文件的名称和相关源文件。#把当前目录下的源文件存列表存放到变量SRC_LIST里。#指定从某些源文件创建库文件 动态库libmul.so。#指定从某些源文件创建库文件 静态库libmul.a。#指定cmake版本不低于3.14。编写CMakeLists.txt。#将源文件赋值给SOURCES。执行cmake ./生成Makefile。#设置c++11标准。
2024-02-20 09:22:40 215
原创 理清类图,辨识UML
2、Water作为全局类,Animal直接调用Water类。3、Water类作为Animal类某个方法中参数或者返回值。1、Water作为Animal类某个方法中的局部变量。protected 用 # 表示。private 用 - 表示。public 用 + 表示。
2024-01-10 10:49:51 439
原创 QML--states 与 transitions动画制作
展现效果:从0位置移动到 100,100 的位置,再持续一秒红色,变成蓝色。展示效果:由蓝变绿,时间1s,透明度由0.1 到 1。展现效果:默认蓝色,鼠标点击显示红色,释放显示蓝色。展现效果:达到渐变的效果,点击释放,释放点击的过程。展现效果:x或y值变化的一个行为动作。展现效果:延时一秒,展示一行文本。
2023-12-27 16:09:04 396
原创 排序算法--希尔排序
③ 取第二个增量d2小于d1重复上述的分组和排序,直至所取的增量dt=1(dt小于dt-l小于…小于d2小于d1),即所有记录放在同一组中进行直接插入排序为止。① 先取一个小于n的整数d1作为第一个增量,把文件的全部记录分成d1个组。② 所有距离为d1的倍数的记录放在同一个组中,在各组内进行直接插入排序。
2023-11-22 11:13:45 488
原创 排序算法--冒泡排序
②对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。④持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。① 比较相邻的元素。如果第一个比第二个大,就交换他们两个。③针对所有的元素重复以上的步骤,除了最后一个。
2023-11-22 11:10:42 585
原创 排序算法--选择排序
① 第一轮从下标为 1 到下标为 n-1 的元素中选取最小值,若小于第一个数,则交换。② 第二轮从下标为 2 到下标为 n-1 的元素中选取最小值,若小于第二个数,则交换。③ 依次类推下去……
2023-11-22 11:03:02 585
原创 排序算法--归并排序
① 将序列每相邻两个数字进行归并操作,形成floor(n/2)个序列,排序后每个序列包含两个元素。② 将上述序列再次归并,形成floor(n/4)个序列,每个序列包含四个元素。③ 重复步骤②,直到所有元素排序完毕。
2023-11-22 10:52:15 541
原创 排序算法--快速排序
② 重新排序数列,所有元素比基准值小的摆放在基准前面,所有元素比基准值大的摆在基准的后面(相同的数可以到任一边)。在这个分区退出之后,该基准就处于数列的中间位置。这个称为分区(partition)操作。③ 递归地(recursive)把小于基准值元素的子数列和大于基准值元素的子数列排序。① 从数列中挑出一个元素,称为 “基准”(pivot),
2023-11-22 10:20:17 657
原创 排序算法--插入排序
④ 重复步骤③,直到找到已排序的元素小于或者等于新元素的位置。② 取出下一个元素,在已经排序的元素序列中从后向前扫描。③如果该元素(已排序)大于新元素,将该元素移到下一位置。① 从第一个元素开始,该元素可以认为已经被排序。⑤将新元素插入到该位置后。
2023-11-22 10:08:57 483
原创 VC6.0 添加CMarkup文件,程序编译不成功
其次看图标Markup.cpp 与其他图标存在不一样:Project ->Setting ->选择对应的文件 ->取消勾选Exclude file from build就欧克了!首先将文件添加进工程,右键选择 Add Files to Project…,选择对应的文件Markup.cpp, Markup.h。勾选Exclude file from build表示:屏蔽文件,不进行编译。
2023-11-16 16:02:59 166
原创 Windows 常用快捷键
Ctrl + Shift + Esc – 打开任务管理器。Windows + Tab – 快速查看打开应用与历史。Windows + 1,2,3 – 快速跳转到应用。Ctrl + Shift + N – 创建文件夹。Windows + d – 最小化全部应用。Windows + E – 打开资源管理器。Ctrl + a – 选择全部。Ctrl + u – 下划线。Ctrl + b – 加粗。Ctrl + c – 拷贝。Ctrl + f – 查找。Ctrl + i – 斜体。Ctrl + v – 粘贴。
2023-11-16 11:25:42 178
原创 设计模式-装饰器模式(Decorator Pattern)
装饰器模式允许在运行时动态地给一个对象添加一些额外的职责,而不会影响到其他对象。在C++中,装饰器模式可以通过定义一个抽象组件类和多个装饰器类来实现。
2023-08-07 09:30:23 89
原创 设计模式-迭代器模式(Iterator Pattern)
迭代器模式提供了一种顺序访问聚合对象中各个元素的方法,而不用暴露其内部表示。在C++中,迭代器模式可以通过定义一个迭代器接口和多个具体迭代器类来实现。
2023-08-07 09:26:36 84
原创 设计模式-观察者模式(Observer Pattern)
观察者模式定义了对象之间的一对多依赖关系,当一个对象状态发生改变时,所有依赖它的对象都会得到通知并自动更新。在C++中,观察者模式可以通过定义一个主题类和多个观察者类来实现。
2023-08-07 09:23:50 77
原创 设计模式-策略模式(Strategy Pattern)
策略类封装了算法,客户端根据需要选择相应的策略类,并将其传递给上下文对象。策略模式定义了一系列算法,将它们封装成单独的类,并且使它们可以相互替换。在C++中,策略模式可以通过定义一个抽象策略类和多个具体策略类来实现。
2023-08-07 09:20:48 81
原创 设计模式-工厂模式(Factory Pattern)
在C++中,工厂模式可以通过创建一个工厂类来实现,工厂类负责根据给定的参数来创建合适的对象。工厂模式是一种创建型设计模式,它提供了一种方法来实例化对象,而不必暴露对象的创建逻辑。
2023-08-07 09:18:00 60
原创 设计模式-单例模式(Singleton Pattern)
在C++中,单例模式可以通过将构造函数设为私有来实现,这样就无法通过常规的构造函数创建实例。通过提供一个静态的方法来获取实例,可以保证只有一个实例存在。单例模式保证一个类只有一个实例,并且提供一个全局的访问点。
2023-08-07 09:16:02 139
原创 C++11多线程编程-互斥量解决多线程数据共享问题
如果多个线程同时访问一个变量,并且其中至少一个变量对该变量进行了写操作,那么就会出现数据竞争问题。为了避免数据竞争问题,需要使用同步机制来确保多个线程之间对共享数据的访问是安全的。数据竞争可能会导致程序崩溃,产生未定义的结果,或者得到错误的结果。常用的同步机制包括互斥量、条件变量、原子操作等。在多个线程中共享数据时,需要注意线程安全问题,
2023-08-04 14:32:00 120
原创 在网页超时的情况下,如何快速的访问github项目
比如访问https://github.com/转了半天,显示网页超时,这时候有个小技巧。在github前面加个k。
2023-08-04 10:53:50 107
应聘软件工程师岗位简历模板
2020-10-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人