自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 资源 (1)
  • 收藏
  • 关注

原创 【Qt】QImage支持jpeg图片的正确显示

在使用QImage显示图片信息时,有一个缺陷,QImage并不支持jpeg图片的exif元信息提取,需要借助其他exif的信息提取库来做辅助,再使用QTransfer的转换功能来实现图片的正确显示。

2024-07-14 18:00:51 120

原创 【C++】Pimpl惯用法

Pimpl(Pointer to Implementation)是一种C++设计模式,它用于隐藏类的实现细节,提供更好的封装和模块化。Pimpl惯用法的核心思想是将类的实现细节封装在一个指针指向的具体实现类中,而类的公共接口则仅包含一个指向实现类的指针。这有助于减小编译依赖关系,减少编译时间,提高代码的可维护性。

2023-09-20 20:01:02 147

原创 【C++】有了指针为什么还要引用

为什么C++有了指针还要引用?引用的底层也是指针实现的,引用和指针在编译结束之后汇编指令是一样的,引用会占用和指针相同大小的数据空间。引用传递,只是明面上,没有使用值传递,值传递本身是不可避免的。编译器,暗地里通过指针(或者其他可以替代指针的数据类型)的值传递,替换了引用传递。引用能实现的基本上指针都可以实现,那为什么C++还需要引入引用呢?

2023-07-20 00:42:51 220

原创 【io】fwrite和_fwrite_nolock

今天在翻看开发手册时发现了,fwrite的说明,有了一些收获

2023-05-22 19:05:20 269

原创 【c】fwrite和_fwrite_nolock

当在 Unicode 转换模式下打开 stream 时(例如,通过调用 stream 并使用包含 fopen、ccs=UNICODE 或 ccs=UTF-16LE 的模式参数打开 ccs=UTF-8 时,或者通过使用 _setmode 和包含 _O_WTEXT、_O_U16TEXT 或 _O_U8TEXT 的模式参数将该模式更改为 Unicode 转换模式时),会将 buffer 解释为指向包含 UTF-16 数据的 wchar_t 数组的指针。此外,如果发生错误,则无法确定文件位置指示器。

2023-05-10 22:18:42 269

原创 【opencv】解决USB相机取流卡顿问题

最近在使用opencv接usb相机时遇到了画面很卡问题,具体体现在cv::videocapture >> frame 的耗时大概在200ms左右。通过查询资料发现,USB相关通常会支持YUV格式和MJPG格式输出,YUV格式未经过压缩,数据量较大,usb相机的带宽不足以支撑高分辨率,MJPG格式可支持高分辨率。

2023-02-22 21:22:34 1632 1

原创 【Qt】解决windows高分辨和缩放问题

解决qt在不同缩放和高分辨率界面显示问题

2023-02-15 20:42:25 2173 3

原创 【图形学】绕固定轴旋转公式

注意:关于旋转的正方向,OpenGL与多数图形学书籍规定旋转正方向为逆时针方向(沿着坐标轴负方向向原点看),比如Computer Graphics C Version,p409。==============左手坐标系下(Unity,DirectX)===============绕X轴旋转:绕Y轴旋转:绕Z轴旋转:===============右手坐标系下(Opengl)============注意:规定在右手坐标系中,物体旋转的正方向是右手螺旋方向,即从该轴正半轴向原点看

2023-02-08 23:23:37 344

原创 【C++】explicit关键字

关键字explicit,可以阻止不应该允许的经过转换构造函数进行的隐式转换的发生。声明为explicit的构造函数不能在隐式转换中使用。  C++中, 一个参数的构造函数(或者除了第一个参数外其余参数都有默认值的多参构造函数), 承担了两个角色。 1 是个构造器 2 是个默认且隐含的类型转换操作符。  所以, 有时候在我们写下如 AAA = XXX, 这样的代码, 且恰好XXX的类型正好是AAA单参数构造器的参数类型, 这时候编译器就自动调用这个构造器, 创建一个AAA的对象。 

2023-02-08 23:17:47 71

原创 【QGridLayout】子控件大小不统一

QGridLayout这个布局方式,得到的子窗口布局却不能满足子窗口完全相同,出现3个子窗口或更多时,子窗口的宽度会不一致

2023-02-06 20:18:14 1730

原创 【杂谈】不同客户端框架的优缺点

本文介绍了客户端开发框架的演变历史,以及各种框架之间的优缺点。

2023-02-01 23:22:24 329

原创 QSettings模块

QSettings是Qt提供的,用于解决跨平台的持久化Settings类,该模块封装在core核心模块中。QSettings是对配置文件读写、修改等技术的抽象,使您能够以一种可移植的方式保存和恢复应用程序设置,它还支持自定义存储格式。

2023-01-30 21:16:06 211

原创 【OpenCV】cvCreateImg使用记录

最近在一个项目中使用到了cvCreateImage函数来创建一个IplImage图片类型用来进行图像的相关计算,使用过程中,遇到了几个小问题,在这里记录一下。

2023-01-15 18:39:07 362

原创 【Qt】根据png的alpha通道生成mask

【Qt】根据png的alpha通道生成mask

2023-01-12 11:40:30 349

转载 【C++11】原子操作(atomic operation)

​所谓的原子操作,取的就是“原子是最小的、不可分割的最小个体”的意义,它表示在多个线程访问同一个全局资源的时候,能够确保所有其他的线程都不在同一时间内访问相同的资源。也就是他确保了在同一时刻只有唯一的线程对这个资源进行访问。这有点类似互斥对象对共享资源的访问的保护,但是原子操作更加接近底层,因而效率更高。

2023-01-08 14:52:38 166

原创 【C++】带指针结构体的序列化操作

在项目中经常会遇到结构体中含指针的读写,指针保存的是某块内存的地址,其读写方式和基础变量存在差异,本文介绍的是使用fwrite和fread读取结构体信息。

2023-01-07 16:55:46 734

原创 【C++】_findfirst错误记录

_findfirst使用问题及其原因分析

2023-01-04 22:12:12 717 2

opensslTestForImg.rar

使用移位和base64编码完成图片加解密,实测加解密速度为ms级,缺点是加密算法容易被破解,只适用于对加解密速度较高的使用场景。适合如下使用场景: 1、嵌入式设备上图片加解密 2、对速度要求比较高的情景,如实时采集系统

2023-01-30

QT QListWidget新增右键删除item内容

在QT中,QListWidget控件是没有右键删除子控件的功能的,本示例使用重写QListWidget的事件过滤器eventFilter的方法实现右键删除功能

2018-07-12

空空如也

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

TA关注的人

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