科普选高清显示器:屏幕色域sRGB、NTSC、Adobe RGB、DCI-P3区别
摘要:如何选择一款清晰度好的显示器?很多人购买显示器就是看厂家宣传或者盲目的选择,其中有很多概念都是噱头,但是,如果追求清晰还原度,色域是一个重要的参数,为了让大家更理智的选择显示器屏幕,今天就科普一下显示器的屏幕色域相关知识。 色域其实也可以叫做色彩空间(Color Space),而域是一个数学概念,可
阅读全文
posted @
2022-08-31 17:35
一杯清酒邀明月
阅读(10100)
推荐(1) 编辑
白平衡进化史
摘要:问题1:为什么要做白平衡 Camera sensor在不同光源下的对白色的响应是这样的: CCT -- 10000K -- 比如:艳阳天的阴影下 CCT -- 7000K -- 比如:阴天 CCT --5000K -- 比如:大晴天 CCT --3000K -- 比如:钨丝灯 CCT --2000K
阅读全文
posted @
2022-08-31 17:15
一杯清酒邀明月
阅读(466)
推荐(1) 编辑
win10 计算机管理员权限粘贴文件,高手分析win10往c盘粘贴文件需要权限的详细解决对策...
摘要:windows系统由于出色的稳定性,深受大家的喜爱,但是还是难免会到win10往c盘粘贴文件需要权限的问题,这个对于那些比较熟悉win10系统的网友处理起来很简单,但是不太熟悉电脑的网友面对win10往c盘粘贴文件需要权限问题就很难受了。如果我们希望自己能够掌握更多的相关能力,这次可以跟着小编的指导
阅读全文
posted @
2022-08-30 17:58
一杯清酒邀明月
阅读(3862)
推荐(0) 编辑
Qt 'QApplication'file not found 解决办法
摘要:本人初次接触Qt,第一个程序就折腾了大半天。 hello.cpp #include <QApplication> #include <QLabel> int main(int argc, char *argv[]) { QApplication a(argc, argv); QLabel *labe
阅读全文
posted @
2022-08-25 14:27
一杯清酒邀明月
阅读(1962)
推荐(0) 编辑
C/C++ 回车符“0x0D”、“\n”,换行符“0x0A”、“\r
摘要:在Windows中:'\r' 回车,回到当前行的行首,而不会换到下一行;'\n' 换行,换到当前位置的下一行,而不会回到行首;"回车”(Carriage Return)和“换行”(Line Feed)这两个概念的来历和区别。 在计算机还没有出现之前,有一种叫做电传打字机(Teletype Model
阅读全文
posted @
2022-08-24 16:22
一杯清酒邀明月
阅读(1049)
推荐(0) 编辑
Qt QPlainTextEdit多行文本编辑器
摘要:QPlainTextEdit是一个多行文本编辑器,用于显示和编辑多行简单文本。另外,还有一个QTextEdit组件,是一个所见即所得的可以编辑带格式文本的组件,以HTML格式标记符定义文本格式。 实例samp4_6演示QPlainTextEdit的使用,运行界面如下图: 从上一节的代码中,我们已经知
阅读全文
posted @
2022-08-23 13:20
一杯清酒邀明月
阅读(1084)
推荐(0) 编辑
Qt 信号发送过快,槽函数处理不过来解决方法
摘要:问题:跨线程使用信号与槽连接,信号的发送时间间隔小于槽函数处理的时间间隔,造成的问题。 子线程下的槽函数,用sleep来模拟槽函数的耗时操作: 1 void MyThread::myTimeout() 2 { 3 qDebug() << "test"; 4 QThread::sleep(2); 5
阅读全文
posted @
2022-08-22 16:39
一杯清酒邀明月
阅读(1928)
推荐(0) 编辑
Qt Widgets模块 QAbstractGraphicsShapeItem类
摘要:QAbstractGraphicsShapeItem类为所有路径项目提供了一个公共基础。 头文件:#include <QAbstractGraphicsShapeItem> qmake:QT += widgets 继承:QGraphicsItem 被继承:QGraphicsEllipseItem,Q
阅读全文
posted @
2022-08-22 16:37
一杯清酒邀明月
阅读(264)
推荐(0) 编辑
C/C++ 数组元素全清零实现
摘要:总结 全局变量数组未初始化,则其默认值全为0. 局部变量数组未初始化,则其默认值随机,需要手动清零。 数组初始化为空最简单。 PS:关于所用函数的解析 一、全局变量数组 1 #include <stdio.h> 2 int a[100]; 3 int main() 4 { 5 printf("%d
阅读全文
posted @
2022-08-22 16:35
一杯清酒邀明月
阅读(1998)
推荐(0) 编辑
Qt 静态函数中的信号和槽问题
摘要:介绍 信号和插槽用于对象之间的通信。信号和插槽机制是Qt的一个核心特性,可能是与其他框架提供的特性最为不同的部分。Qt的元对象系统使信号和插槽成为可能。 在GUI编程中,当我们更改一个小部件时,我们通常希望通知另一个小部件。更一般地说,我们希望任何类型的对象都能够相互通信。例如,如果用户单击“关闭”
阅读全文
posted @
2022-08-22 16:33
一杯清酒邀明月
阅读(373)
推荐(0) 编辑
Qt 静态函数发送信号
摘要:一、简介 由于博主本人是初学者对QT的机制不了解,所以遇到了一个比较大的坑,特此记录一下。我遇到的问题是无法在静态函数中向另外一个类发送信号。解决办法:先将信号发送给同类中的普通函数,然后在从普通函数中发送信号给外部类。 二、C与C++中static的用法 这里不是介绍QT静态函数信号的发送吗,和s
阅读全文
posted @
2022-08-22 16:31
一杯清酒邀明月
阅读(517)
推荐(0) 编辑
C++ 函数指针
摘要:C++函数指针详解1.定义每一个函数都占用一段内存单元,它们有一个起始地址,指向函数入口地址的指针称为函数指针 2.语法*指向函数的指针变量的一般定义形式为:数据类型 (指针变量名)(参数表); 3. 说明(1)函数指针的定义形式中的数据类型是指函数的返回值的类型。 (2) 区分下面两个语句int
阅读全文
posted @
2022-08-22 16:29
一杯清酒邀明月
阅读(146)
推荐(0) 编辑
Qt 重载QGraphicsItem的type()函数
摘要:一、前言 在QGraphicsScene 上绘制图形时,经常会使用items()这种便利函数,获取当前画布上所有的图形列表;因为绘制的时候,可能会绘制不同的图形,在得到所有的图形列表之后,通常需要对其中的 QGraphicsItem 进行类型检测,确定实际item的类型,然后对其进行类型转换得到正确
阅读全文
posted @
2022-08-22 16:28
一杯清酒邀明月
阅读(260)
推荐(0) 编辑
Qt Debug模式无法运行
摘要:问题: 如题,在Qt Creator中使用Debug模式启动程序,直接提示“程序异常结束。”,也不报任何错,然后Debug目录直接双击xxx.exe文件,提示缺少Qt5Cored.dll 解决方法: 从QT的bin目录下将Qt5Cored.dll拷贝过来,然后就可以运行了,Qt Creator中也可
阅读全文
posted @
2022-08-17 16:56
一杯清酒邀明月
阅读(1300)
推荐(0) 编辑
Qt 解决报错 This application failed to start because it could not find or load the Qt platform plugin
摘要:解决 Qt5 报错 This application failed to start because it could not find or load the Qt platform pluginQT为了简化生成发布版本,特别提供了工具 "windeplayqt.exe",这个工具在 "...\Q
阅读全文
posted @
2022-08-17 16:55
一杯清酒邀明月
阅读(1761)
推荐(0) 编辑
Qt 运行显示 This application failed to start because it could not find or load the Qt platform plugin
摘要:QT发布exe文件以后,运行文件时提示: This application failed to start because it could not find or load the Qt platform plugin “windows”.Reinstalling the application
阅读全文
posted @
2022-08-17 16:54
一杯清酒邀明月
阅读(1061)
推荐(0) 编辑
C/C++ 如何拷贝一个wchar_t类型的字符串
摘要:1 Do this, 2 3 wchar_t clone[260]; 4 5 wcscpy(clone,szPath); 6 7 Or, if you want to allocate memory yourself, 8 9 wchar_t *clone = new wchar_t[wcslen(
阅读全文
posted @
2022-08-17 16:53
一杯清酒邀明月
阅读(716)
推荐(0) 编辑
C++ 获得`wchar_t *`的长度
摘要:sizeof (wchar_t); 如果你想知道一个wchar_t串(wchar_t *)的大小,要使用wcslen: 1 size_t wcslen (const wchar_t *ws); 假设你想终止的C风格的字符串,你有两个选择空的长度: #include <cwchar>并使用 std::
阅读全文
posted @
2022-08-17 13:44
一杯清酒邀明月
阅读(2139)
推荐(0) 编辑
Qt 无法解析的外部符号“public: virtual struct QMetaObject const ...“
摘要:1、问题描述 [注]CheckBoxHeaderView是我自己的类名 由于项目需要,要将QT类添加到VS对应工程中,通过项目右键添加该类的.h和.cpp文件,生成dll时候一直报错,无法解析的外部符号"public: virtual struct QMetaObject const …"一般来说,
阅读全文
posted @
2022-08-16 13:37
一杯清酒邀明月
阅读(2287)
推荐(0) 编辑
Qt char*,wchar_t*与QString之间的转换(利用reinterpret_cast和_stprintf函数,fromWCharArray从字符数组里读取数据)
摘要:1 //QString to wchar_t: 2 const wchar_t * encodedName = reinterpret_cast<const wchar_t *>(fileName.utf16()); 3 4 //QString to char * (general case): 5
阅读全文
posted @
2022-08-16 11:07
一杯清酒邀明月
阅读(527)
推荐(0) 编辑
Qt item setZValue() 函数
摘要:setZValue(zValue):设置item的层叠顺序。 zValue值大的item在zValue值小的item之上。 如果不设置默认为为0,item的层叠会按照加入的顺序层叠。
阅读全文
posted @
2022-08-15 15:56
一杯清酒邀明月
阅读(87)
推荐(0) 编辑
Qt 如何在QGraphicsScene中启用拖动?
摘要:我想在QGraphicsScene中放两张图片.一个是固定的,另一个是可移动的.但我只是把这些图片放在了QGraphicsScene中,我无法移动它们.我怎样才能做到这一点? 解决方法 你必须确保该项目是可移动的.看看 QGraphicsItem::setFlag. 你必须做这样的事情: Item-
阅读全文
posted @
2022-08-12 11:15
一杯清酒邀明月
阅读(327)
推荐(0) 编辑
Qt Q_UNUSED()函数的作用
摘要:Q_UNUSED()函数在程序中的作用,就如它所代表的英文一样,unused,即无用的意思。即Q_UNUSED()函数在程序中没有实质性的作用,用来避免编译器警告。 下面我们来看一组程序: 1 void ColorItem::paint(QPainter *painter, const QStyle
阅读全文
posted @
2022-08-12 11:13
一杯清酒邀明月
阅读(389)
推荐(0) 编辑
Qt QImage读取某些jpg或png图片失败的问题
摘要:我用Qimage读取两张jpg图片(2.jpg和00001.jpg)方式如下: 1 QImage qimg; 2 qimg.load(strStartPath);// strStartPath为图片完整路径 结果发现载入2.jpg正常,但载入00001.jpg后,qimg为null 经过后来对比两张
阅读全文
posted @
2022-08-11 16:33
一杯清酒邀明月
阅读(2388)
推荐(0) 编辑
C++ 回调函数基本介绍和基本使用场景
摘要:1.回调函数基本定义-什么是函数指针通俗来说,函数指针是一个指向特定函数的指针。函数的类型由其参数及返回类型共同决定,与函数具体名称无关。示例代码如下: int testFun1(int param1,long param2,float param3); //普通函数定义 该函数的类型为int(in
阅读全文
posted @
2022-08-10 16:00
一杯清酒邀明月
阅读(586)
推荐(0) 编辑
C语言 - 注册函数、回调函数(callback)以及多态的实现
摘要:一、函数指针 函数指针:指向存放函数空间首地址的指针变量。 函数指针的定义方式为: 函数返回值类型 (* 指针变量名) (函数参数列表); 一般为了方便使用,我们会选择 typedef 函数返回值类型 (* 指针变量名) (函数参数列表); typedef的功能是定义新的类型。 // 函数指针 ty
阅读全文
posted @
2022-08-10 15:59
一杯清酒邀明月
阅读(2153)
推荐(0) 编辑
C++ 注册回调函数机制
摘要:回调函数机制 使用了 函数指针。步骤: 1.定义一个函数指针,如typedef void (*func_ptr)(std::string str); 2.定义一个 回调函数 void func(std::string str),需要注意的是,回调函数必须和前面定义的函数指针参数类型和参数个数一致 3
阅读全文
posted @
2022-08-10 15:56
一杯清酒邀明月
阅读(1841)
推荐(0) 编辑
C++ 回调模式——定义注册调用
摘要:举个栗子:例如:SDKManager(上层)需要调用SDKFunc(下层),而在SDKFunc中,需要反过来调用到SDKManager中的的函数SDKCallback(),则SDKCallback()称为回调函数。 1、在SDKFunc中,需要做两件事: (1)约定回调函数原型 即函数指针 type
阅读全文
posted @
2022-08-09 16:14
一杯清酒邀明月
阅读(369)
推荐(0) 编辑
Qt error LNK2005: “找到一个或多个多重定义的符号” 已经在 main.obj 中定义 的解决方法
摘要:这里我有三个源文件:Base.hpp, Base.cpp 和 main.cpp 在Base.hpp里面定义一个基类,注意,基类只包含构造函数和析构函数的声明,函数在Base.cpp里实现。 此外在Base.hpp中还有一个函数的定义(函数声明和定义都在Base.hpp文件中)三个文件代码如下: 1
阅读全文
posted @
2022-08-09 16:11
一杯清酒邀明月
阅读(1685)
推荐(0) 编辑
C++ 再谈谈注册(本质是建立映射)与回调
摘要:在之前的博文中, 我们探讨过映射的重要作用, 请直接看:http://blog.csdn.net/stpeace/article/details/39452203, 在那篇文章中, 我们是用STL中的map来做的, map建立的是key-value映射, 在本文中, 我们自己来建立映射, 并讨论一个
阅读全文
posted @
2022-08-09 16:09
一杯清酒邀明月
阅读(302)
推荐(0) 编辑
C++ 为什么需要回调函数?
摘要:假设A模块是需要调用B模块,而B模块又需要调用A模块,我们知道,模块之间的调用需要包含头文件,那模块的相互调用就存在头文件的相互包含,结果,你自己试试就知道了。不相互包含又不行,下面我们给出行不通的方式(我用main.c来模拟A模块,用test.c来模拟B模块): main.c内容如下: 1 #in
阅读全文
posted @
2022-08-09 16:04
一杯清酒邀明月
阅读(153)
推荐(0) 编辑
C++ 再论无处不在的回调机制---注册与回调
摘要:回调函数的作用和用途,我就不多说了,之前也讨论过, 现在再来熟悉一下与回调函数相关的程序。 我们知道, 回调机制, 就是通过函数指针来实现的。 说白了, 就是注册与回调。 下面,直接上菜, 希望大家品尝: 1 #include <iostream> 2 using namespace std; 3
阅读全文
posted @
2022-08-09 16:01
一杯清酒邀明月
阅读(493)
推荐(0) 编辑
C++ 注册和回调
摘要:注册回调的作用 在设计模式中注册回调的方式叫做回调模式。在SDK开发中,为增强开发者的SDK通用性,排序或者一些算法逻辑需要使用者进行编写。这时候就需要向SDK传递回调函数。注册回调能使下层主动与上层通信。从而避免了上层不停询问下层的模式。 注册回调的流程 SDK的接口会提供一个注册回调函数,来规范
阅读全文
posted @
2022-08-09 15:18
一杯清酒邀明月
阅读(1569)
推荐(1) 编辑
C++ string转wchar_t*和QString转wchar_t*
摘要:string转wchar_t* 首先介绍下wchar_t类型 一、wchar_t类型的由来 我们知道char类型变量可以存储一个字节的字符,它用来保存英文字符和标点符号是可以的,但是对于汉字、韩文以及日文这样的字符却不可以,因为汉字、韩文以及日文每一个文字都占据两个字节,为了解决这个问题,c++提出
阅读全文
posted @
2022-08-09 15:14
一杯清酒邀明月
阅读(2452)
推荐(0) 编辑
C++ struct简介
摘要:一、概念结构体(struct)是由一系列具有相同类型或不同类型的数据构成的数据集合,也叫结构。它就将不同类型的数据存放在一起,作为一个整体进行处理。 结构体在函数中的作用不是简便,其最主要的作用就是封装。封装的好处就是可以再次利用。让使用者不必关心这个是什么,只要根据定义使用就可以了。 结构体的大小
阅读全文
posted @
2022-08-08 14:19
一杯清酒邀明月
阅读(821)
推荐(0) 编辑
C++ 结构体定义 typedef struct 用法详解和用法小结
摘要:typedef是类型定义的意思。typedef struct 是为了使用这个结构体方便。 具体区别在于: 若struct node{ }这样来定义结构体的话。在定义 node 的结构体变量时,需要这样写:struct node n; 若用typedef,可以这样写:typedef struct no
阅读全文
posted @
2022-08-08 14:14
一杯清酒邀明月
阅读(2514)
推荐(0) 编辑
C++ 结构体(struct)最全详解
摘要:一、定义与声明 1. 先定义结构体类型再单独进行变量定义 1 struct Student 2 { 3 int Code; 4 char Name[20]; 5 char Sex; 6 int Age; 7 }; 8 struct Student Stu; 9 struct Student StuA
阅读全文
posted @
2022-08-08 14:12
一杯清酒邀明月
阅读(17648)
推荐(1) 编辑
C++ std::vector
摘要:std::vector template < class T, class Alloc = allocator<T> > class vector; // generic template vector是表示可以改变大小的数组的序列容器。 就像数组一样,向量对其元素使用连续的存储位置,这意味着也可以
阅读全文
posted @
2022-08-08 14:06
一杯清酒邀明月
阅读(268)
推荐(0) 编辑
C++ std::vector使用简介
摘要:使用vector,需添加头文件#include<vector>, 要使用sort或find,则需要添加头文件#include<algorithm>。 为了简化书写,需在.h中增加using namespace std; 1.vector的初始化及赋值 1 std::vector<int> nVec;
阅读全文
posted @
2022-08-08 14:01
一杯清酒邀明月
阅读(2573)
推荐(0) 编辑
Qt 纯C++项目发布为dll的方法(超详细步骤)
摘要:众所周知,我们可以将C++项目中的类以及函数导出,形成 .dll 文件,以供其他程序使用,下面将说明Qt环境下的使用方法。 首先创建共享库,步骤如下 下一步会出现类对话框等等,不用管它,直接点击创建即可,稍后再将类都删了。 创建好以后你会发现有一个包含global的头文件,这个文件中定义了__dec
阅读全文
posted @
2022-08-05 15:50
一杯清酒邀明月
阅读(1248)
推荐(0) 编辑
C++ 写SDK算法心得体会
摘要:1 //1、根据void* 接口指针创建实际内容指针(为了封装,加密) 2 soft_isp_handle_t pHandle = NULL; 3 st_soft_isp_handle_create(&pHandle); 4 5 6 //2、将pHanle赋予param_t结构体进行构造生成结构体参
阅读全文
posted @
2022-08-05 15:18
一杯清酒邀明月
阅读(480)
推荐(0) 编辑
Qt VS2017编写纯C库以及使用Qt调用C库方法
摘要:Demo Qt调用方法 步骤一:根据C库头文件,定义各种函数指针类型 C库的头文件,如下图: Qt的C库函数指针定义,如下图: 步骤二:定义全局使用的指针和回调函数 回调函数必须为静态函数,静态函数中使用的类变量必须为静态变量。 步骤三:加载库文件,解析函数赋值给指针,并注册回调
阅读全文
posted @
2022-08-05 14:17
一杯清酒邀明月
阅读(365)
推荐(0) 编辑
如何编写sdk?
摘要:一、背景介绍在平时工作中,我们会把通用的代码,合并到一个通用的SDK中,增加大家工作效率,本文主要分享我们在编写SDK时候的准入标准以及相关编码思想。 首先需要回答,为什么要编写SDK? 1. 避免重复造轮子 2. 减少线上bug概率 1.1 避免重复造轮子好的sdk可以帮助团队省时省力,将相同的功
阅读全文
posted @
2022-08-05 13:32
一杯清酒邀明月
阅读(311)
推荐(0) 编辑
Qt 设置生成文件的路径(DESTDIR)
摘要:在pro文件中,添加 DESTDIR = 路径 最终会在指定路径下生成一个exe文件
阅读全文
posted @
2022-08-05 10:10
一杯清酒邀明月
阅读(578)
推荐(0) 编辑
C++ typedef详解
摘要:typedef的用途 1)定义一种类型的别名 注意typedef并不是简单的宏替换,如下例所示: 1 int main() 2 { 3 char *pa,pb;//声明了一个指向字符变量的指针pa,和一个字符变量pb 4 pa = "hello"; 5 pb = "hello";//报错,不能将co
阅读全文
posted @
2022-08-05 09:36
一杯清酒邀明月
阅读(548)
推荐(0) 编辑
Qt 生成dump文件及windbg调试(进阶版)
摘要:一、异常捕获和dump文件生成 还是简单的说一下吧,各位不了解的也可以看看本人的另一篇博客。也可以直接参考如下:main.cpp 1 #include "mainwindow.h" 2 #include <QApplication> 3 #include <Windows.h> 4 #include
阅读全文
posted @
2022-08-04 16:24
一杯清酒邀明月
阅读(1852)
推荐(0) 编辑
Windows下的Qt编译器 - MinGW和MSVC的区别
摘要:MSVC:即Microsoft Visual C++ Compiler,即微软自己的编译器我们下载Windows下的OpenCV时,会带两个文件夹VC14,VC15(分别与Visual Studio的版本有对应关系),这两个文件夹下的库可以直接运行不需要编译将VS作为Qt的开发环境也是使用这个编译器
阅读全文
posted @
2022-08-04 16:00
一杯清酒邀明月
阅读(1435)
推荐(0) 编辑
Qt MSVC与MinGW的区别
摘要:Qt 中有两种方式编译,一种是MinGW ,另一种MSVC。 1.MSVC是指微软的VC编译器。2.MinGW是指是Minimalist GNU on Windows的缩写。它是一个可自由使用和自由发布的Windows特定头文件和使用GNU工具集导入库的集合,允许你在GNU/Linux和Window
阅读全文
posted @
2022-08-04 15:54
一杯清酒邀明月
阅读(1215)
推荐(0) 编辑
Qt 建立带有子项目的项目,以及子项目之间的调用
摘要:建立带有子项目的项目 选择 其他-> 子项目目录 然后根据指导下一步即可。 建立好项目之后,就可以往项目中添加各种子项目。 向项目中添加子项目 右键项目,选择 Library 然后根据向导进行下一步操作即可,完成后的 .pro 文件是这样的 显示创建的类型的 lib,动态库 在项目中调用子项目 所有
阅读全文
posted @
2022-08-04 15:15
一杯清酒邀明月
阅读(814)
推荐(0) 编辑