自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(113)
  • 资源 (4)
  • 收藏
  • 关注

原创 【C++】二进制传输结构体

【代码】【C++】二进制传输结构体。

2023-09-08 16:02:08 181

原创 【C++】原子类型非线程安全

预期结果400000实际结果。

2023-08-31 12:57:09 242

原创 【C++11】判断std::map中是否存在某个元素

用find函数,会返回一个迭代器,如果迭代器指向了map的尾部,则可以判定不存在这个元素;

2023-04-25 11:32:55 1612 1

原创 【nlohmann/json】树节点的序列化和反序列化

C++ 的JSON序列化,反序列化

2022-09-25 16:28:24 1209 1

原创 【Qt】Qt项目打包

在qt creator中使用Release编译;然后打开qt命令行工具,注意不是windows自带的命令行工具,如下所示;切换到Release路径下,示例如下:cd /d D:/xxx/xxx/release在qt命令行中输入下列命令,xxx替换成你自己的exe名字:windeployqt xxx.exe如果是qt quick项目,还需要输入下列命令,路径需要替换成自己.

2022-04-25 16:07:56 2476

原创 【Qt】错误 MSB4175 缺失Microsoft.Build.Tasks.Core.dll

可能是之前安装了其它版本qt导致;删除编辑缓存C:\Users\你的用户名字\AppData\Local\QtMsBuild

2022-04-05 21:23:55 584

原创 Qt信号和槽的连接方法

官方文档查看手册可以看出,如果想要把信号和槽函数联系起来,通过connect()方法即可;connect()的参数:sender:产生信号的对象signal:信号的名字method:槽函数示例UdpReceiver::UdpReceiver(QObject *p) : QObject(p){ //udp通信 uSocket = new QUdpSocket; //绑定ip和端口号 uSocket->bind(QHostAddress("127.0.0.1")

2022-03-22 11:35:33 1293

原创 MyBatis高级结果映射

官网的示例<resultMap id="detailedBlogResultMap" type="Blog"> <constructor> <idArg column="blog_id" javaType="int"/> </constructor> <result property="title" column="blog_title"/> <association property="author" javaTy

2022-03-08 15:33:48 379

转载 【InstallShield】入门介绍

主要参考InstallShield 2021 Help LibraryInstallation FundamentalsAn installation is divided into three levels: products, features, and components. The following diagram illustrates this hierarchy:A product is the highest level of organization in an instal.

2022-02-10 15:09:20 795

原创 用正则表达式限制输入的浮点数范围

-180~180的浮点数^-?(180|1?[0-7]?\d(\.\d+)?)-90~90^-?(90|[0-8]?\d?(\.\d+)?)

2022-01-07 10:07:59 992

原创 【MySQL】5秒插入100万行数据

数据库CREATE TABLE `product` ( `pid` int NOT NULL AUTO_INCREMENT, `pname` varchar(64) DEFAULT NULL COMMENT '商品名', `price` double DEFAULT NULL COMMENT '价格', PRIMARY KEY (`pid`)) ENGINE=InnoDB AUTO_INCREMENT=1048561 DEFAULT CHARSET=utf8mb4 COLLATE=utf

2021-12-20 15:10:02 1550

原创 MyBatis-Plus 多表查询

MP提供了大量单表查询的方法,但是没有多表的操作,所以涉及到多表的查询时,需要我们自己实现思路1因为MP是基于MyBatis实现,我们可以使用MyBatis的结果映射来做,下面是一个官网的例子https://mybatis.org/mybatis-3/zh/sqlmap-xml.html#Result_Maps<!-- 非常复杂的语句 --><select id="selectBlogDetails" resultMap="detailedBlogResultMap"&g.

2021-12-16 14:35:05 21235 4

原创 【Qt】时间戳

C++QDateTime::currentMSecsSinceEpoch()qmlqml中可以使用js的方法来获取时间戳function getTimeStamp(){ return Date.now() }

2021-11-12 16:32:12 2540

原创 【Qt】递归读取Json

相关的类QJsonObject,顾名思义,就是Json对象QJsonArray,Json数组QJsonDocument,用于和QByteArray相互转换;QJsonValue,可以从QJsonObject中去key拿到对应的value,类型就是QJsonValue,可以转成实际的类型,如:QString,QJsonObject,QByteArray等;上述说明均是来自于Qt官方文档,官方文档中有详细的API描述,也可以在Qt Creator查看类的声明;Demo从一个文件中读取一个嵌套

2021-11-11 11:06:25 824

原创 【Qt】Base64编解码

Qt#include <QCoreApplication>#include <QByteArray>#include <QDebug>int main(int argc, char *argv[]){ QCoreApplication a(argc, argv); QString temp = QStringLiteral("Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此J

2021-11-10 15:13:15 2087

原创 【Qt】QML自定义控件

MyInputText.qml控件的宽度和高度可以自己设置,右侧的输入框的宽度会根据左侧文本的宽度自动设置import QtQuick 2.14import QtQuick.Controls 2.14import QtQuick.Layouts 1.14Rectangle{ id: root width: 230 height: 30 //固定的文本 property var labelText: "labelText" //用户输入的

2021-11-02 10:29:14 1567

原创 【Qt】QML基本使用

待补充

2021-10-17 14:33:31 1997

原创 【Qt】qml TreeView的简单使用

主要参考了官方demo,Simple Tree Model Example借鉴了https://blog.csdn.net/shado_walker/article/details/56495059中roleNames()函数的写法由于官方的demo是基于qt widgets的,我的目的是在qml中使用TreeView,所以将代码记录如下工程结构.pro文件QT += quick core qml widgets guiCONFIG += c++11# The following.

2021-10-13 17:03:33 2708

翻译 Editable Tree Model Example

This example shows how to implement a simple item-based tree model that can be used with other classes the model/view framework.这个例子展示了如何实现一个简单的基于项目的树模型,它可以与模型/视图框架中的其他类一起使用。The model supports editable items, custom headers, and the ability to insert .

2021-09-24 15:18:21 248 2

原创 【设计模式】单例模式

类图就一个类代码Singleton.javapackage com.company.pattern.demo16;/** * 单例类 * @author blazar */public class Singleton { private static Singleton instance; private Singleton() {} public static Singleton getInstance(){ /**

2021-09-14 16:01:59 73

原创 【设计模式】组合模式

类图工程目录代码AbstractComponent.javapackage com.company.pattern.demo15;/** * 声明组合中的对象的接口,在适当的情况下,实现所有类共有接口的默认行为 * @author blazar */public abstract class AbstractComponent { protected String name; public AbstractComponent(String name){

2021-09-14 14:55:19 76

原创 【Java】Spring Boot之druid配置

本文只做记录,不做讲解方法一使用类来配置,网上很多,自行百度即可;方法二直接写在application.yml中,无需配置类;spring: datasource: username: yourusername password: yourpassword #?serverTimezone=UTC解决时区的报错 url: jdbc:mysql://localhost:3306/yourDbName?serverTimezone=UTC&useUnic.

2021-08-26 17:00:35 604

原创 【设计模式】备忘录模式

类图Originator就是需要备份的这个类,它是作为备份和恢复动作的发起者;Memento是用于存放需要被保存下来的字段,这些信息是来自于Originator的;Caretaker用于存放Memento的实例;工程目录代码Memento.javapackage com.company.pattern.demo14;/** * * @author blazar */public class Memento { /** * 需要保存的数据属性 */

2021-08-20 10:59:11 60

原创 【设计模式】适配器模式

类图下图指的是类适配器模式工程目录代码Target.javapackage com.company.pattern.demo13;/** * 用户需要的接口 * @author blazar */public class Target { public void request(){ System.out.println("普通请求"); }}Adaptee.javapackage com.company.pattern.demo13;

2021-08-19 14:33:39 72

原创 【设计模式】状态模式

类图工程目录代码AbstractState.javapackage com.company.pattern.demo12;/** * 抽象状态类: 定义一个接口以封装与Context的一个特定状态相关的行为 * @author blazar */public abstract class AbstractState { /** * 用来描述与状态相关的行为 * @param context */ public abstract void

2021-08-18 11:14:10 84

原创 【设计模式】抽象工厂模式

类图相较于工厂模式是生产单个类,抽象工厂的作用是生产一个更加复杂的类,这个复杂的类是由多个类组成的,而这些类又有多种实现方法,抽象共产的目的是为了解决生产多个属于同一产品下的不同类的问题工程目录代码AbstractFactory.javapackage com.company.pattern.demo11;/** * 抽象工厂:里面应该包含所有的产品创建的抽象方法 * @author blazar */public abstract class AbstractFactory

2021-08-17 17:30:51 65

原创 【设计模式】观察者模式

观察者模式,也叫发布-订阅模式,定义了一种一对多的关系,多个观察者可以同时监听某一个主题,这个主题的对象的状态发生变化时,会通知所有的观察者对象类图工程目录代码AbstractSubject.javapackage com.company.pattern.demo10;import java.util.ArrayList;import java.util.List;/** * 主题、抽象通知者 * @author blazar */public abstract clas.

2021-08-17 15:30:44 42

原创 【设计模式】建造者模式

类图工程目录代码Product.javapackage com.company.pattern.demo09;import java.util.ArrayList;import java.util.List;/** * 产品类 * @author blazar */public class Product { List<String> parts = new ArrayList<>(); /** * 添加产品部件 *

2021-08-17 14:29:00 40

原创 【设计模式】外观模式

类图子系统不需要知道Facade的存在,这一特性使得我们可以将外观模式用在维护遗留代码上工程目录代码SubSystemA.javapackage com.company.pattern.demo08;/** * @author blazar */public class SubSystemA { public void methodA(){ System.out.println("子系统方法A"); }}SubSystemB.javapac

2021-08-17 11:55:37 55

原创 【设计模式】模板方法模式

类图一言以蔽之,模板方法就是将相对固定的步骤、算法提取到父类中,子类中只放变化的部分,通过复用父类的公共方法,减少了代码的冗余工程目录代码AbstractClass.javapackage com.company.pattern.demo07;/** * 抽象类,实现了一些模板方法,定义了算法的骨架, * 其中一些方法没有实现,需要在子类中实现 * @author blazar */public abstract class AbstractClass { /**

2021-08-17 10:58:18 44

原创 【设计模式】原型模式

类图原型模式是一个比较简单的模式,对于Java而言,在原型类中实现Cloneable接口即可,唯一需要注意的是如果原型类中有引用类型,需要注意使用深复制工程目录新建Java控制台项目即可代码Prototype.javapackage com.company.pattern.demo06;/** * 原型类 * @author blazar */public class Prototype implements Cloneable{ private int id;

2021-08-17 10:19:00 52

原创 【设计模式】工厂方法模式

类图工程目录新建一个Java控制台项目即可;代码AbstractOperation.javapackage com.company.pattern.demo05;/** * show 运算类 * @author Blazar */public abstract class AbstractOperation { private double numberA; private double numberB; /** * 得到运算结果

2021-08-16 23:27:29 54

原创 【设计模式】代理模式

类图工程目录代码AbstractSubject.javapackage com.company.pattern.demo04;/** * 定义了RealSubject和Proxy的共用接口,这样就可以在任何使用RealSubject的地方使用Proxy * @author blazar */public abstract class AbstractSubject { /** * 请求方法 */ public abstract void reque

2021-08-16 22:46:38 67

原创 【设计模式】装饰模式

类图工程目录代码AbstractComponent.javapackage com.company.pattern.demo03;/** * 抽象接口 * @author blazar */public abstract class AbstractComponent { /** * 抽象操作 */ public abstract void operation();}ConcreteComponent.javapackage com.com

2021-08-15 23:47:03 71

原创 【设计模式】策略模式

类图此图中结合了策略模式和简单工厂,单纯的策略模式不需要在CashContext中生成具体策略的对象,可以作为构造函数的参数传入即可工程目录代码AbstractCash.javapackage com.company.pattern.demo02;/** * AbstractCash是抽象的策略,它的实现类是具体的策略 * @author blazar */public abstract class AbstractCash { /** * 现金收取抽象类的抽

2021-08-15 22:05:05 86 1

原创 【设计模式】简单工厂模式

工程目录新建一个Java控制台程序即可代码AbstractOperation.javapackage com.company.pattern.demo01;/** * show 运算类 * @author Blazar */public abstract class AbstractOperation { private double numberA; private double numberB; /** * 得到运算结果 * @au

2021-08-12 22:11:34 61

原创 【Java】在泛型类中访问T类型的方法

工程目录新建一个Java控制台项目即可;代码Student.java实体类package com.study.demo02;public class Student { private int id; private String student_name; public int getId() { return id; } public void setId(int id) { this.id = id;

2021-08-05 17:15:55 205

原创 【Java】反射--通过字符串创建Class对象

工程目录新建Java控制台项目即可;代码如下ISelectList.java接口package com.study;public interface ISelectList { void selectList();}SelectListImpl.java实现类package com.study;public class SelectListImpl implements ISelectList{ @Override public void sel

2021-08-05 11:15:28 772

原创 【C++】赋值运算符的重载问题

1、简介C++类中,通常必须要写的三个方法,一些资料中称为big three拷贝构造,如:String(const String& str);赋值运算符重载,如:String& operator=(const String& a);析构函数,如:~String();2、问题这三个函数有共通之处,都是为了解决类中存在引用变量的问题,因此,如果类中不含有引用变量,即指针的时候,这三个函数并不是必须的;但事情并非这么简单;下面以赋值运算符的重载为例,简单

2021-06-15 10:02:02 560

原创 【Qt】Qt实现类似反射的效果

属性的映射;Q_PROPERTY(int id MEMBER id)

2021-05-27 11:00:21 72

vspd虚拟串口助手

vspd虚拟串口助手。 VSPD会自动识别出本台计算上有几个物理串口,例如本机只有一个物理串口COM1。在右侧端口管理的分页中,添加虚拟端口。虚拟端口一定是成对出现的,如CMO2和COM3,其编号由VSPD自动检测本地物理串口资源后,自动为虚拟串口排号。

2020-10-11

cJSONFiles.zip

cJson源码和使用实例

2019-10-18

RK3308adb环境

RK3308的ADB环境, 1、安装RK3308驱动; 2、将adb.zip解压到c:\adb; 3、添加adb环境变量:在系统环境变量Path中添加:C:\adb即可

2019-02-21

STM32工程模板

工程模板分为4个子文件夹: 1、CORE 2、STM32F10x_FWLib 3、USER 4、OBJ

2018-10-25

空空如也

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

TA关注的人

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