06 2023 档案
QT为什么只能由主线程操作UI
摘要:QT为什么只能由主线程操作UI 背景 QT中,每次非UI线程去更新UI都要通过信号槽去刷。其实不光是QT,很多GUI程序框架都是这么规定的。比如在C#中上位机主要靠主线程刷新UI,当其他线程操作控件时,必须通过委托的方式。委托实质就是一个函数。 主线程:主线程是唯一允许创建QApplication或
C++类中报错:class "xxx" does not name a type
摘要:# C++类中报错:class "xxx" does not name a type ## 原因 1. 引用的类命名空间未包含 2. 引用的类头文件未包含 3. 包含了头文件,或者已经前置声明了,则说明所引用的类名写错。 4. 循环引用头文件 5. 类内修改了类成员 [类中报错 xxx does n
QT信号槽报错no matching member function for call to 'connect'
摘要:# QT信号槽报错no matching member function for call to 'connect' ## 问题 ```cpp connect(dynamic_cast(parent),&AnalyseWindow::sigStart,timerRefresh,&QTimer::st
443/80端口被占用的解决方案
摘要:# 443/80端口被占用的解决方案  ## 443和80端口简介 这两个端口是OS完成网络通信的重要端口: - 80端口:用于HTTP协议,
C++基类的虚析构函数问题abstract but has non-virtual destructor
摘要:# C++基类的虚析构函数问题abstract but has non-virtual destructor C++条款:**如果类存在虚函数,如果类要作为基类的话,一定要在析构函数定义为`virtual`的** 派生类可以分配内存或保留对销毁对象时需要清除的其他资源的引用。如果不为接口/抽象类提供
SQLite3中自增主键归零方法
摘要:SQLite3中自增主键归零方法 Sqlite3记录被清除之后,如果表中有自增长字段,下次再插入数据,会继续延续之前自增长字段的历史记录。即使在清空table后,如果table中有自增ID值,那么这个值是不会归零的,而且会继续呈现递增。 当SQLite数据库中包含自增列时,会自动建立一个名为 sql
QT修改类名
摘要:# QT修改类名 ## 前言 由于QT的自动生成,QT中修改类名往往导致各种编译错误。 首先明确,修改类名的基本操作是使用Qt Creater,右键->Refactor->Rename Symbol under Cursor ## 情形1 给普通类改名 修改完类名后,直接清理项目重新构建即可 ##
Qt报错:call to constructor of '_ConfigDaoImpl' is ambiguous
摘要:# Qt报错:call to constructor of '_ConfigDaoImpl' is ambiguous ## 原因 ```shell configform.cpp:4:13: error: call to constructor of '_ConfigDaoImpl' is ambi
QT构建报错error: multiple target patterns
摘要:# QT构建报错error: multiple target patterns ## 原因 之前一直没有出过问题,但是在我修改了cmd的默认编码后,该问题出现了。原因就是使用`chcp 65001`命令修改cmd编码的方式每次会在命令行中输入`Active code page: 65001`这句话,
【VS链接错误】LNK2019 无法解析的外部符号 _main
摘要:# 【VS链接错误】LNK2019 无法解析的外部符号 _main,函数 “int __cdecl invoke_main(void)“ (? invoke_main@@YAHXZ) 中引用了该符号 2种原因: 1. 链接器相关设置错误,详见:[【VS】LNK2019 无法解析的外部符号 _main
VS编译 error C2001: 常量中有换行符 中文无法通过编译
摘要:# VS编译 error C2001: 常量中有换行符 中文无法通过编译 只有部分中文会提示,并且有时报错又时不错。 2种解决方案: 1. 不用中文 2. 程序中添加`system("chcp 65001");`使用UTF-8字符编码,且在高级保存选项中选择unicode(utf-8带签名)
数据类型所占的字节数探究
摘要:# 数据类型所占的字节数探究 首先明确:**操作系统的寻址能力和机器的地址总线宽度以及数据总线宽度都有关。地址总线宽度决定了机器中总共有多少物理地址,数据总线决定了OS能访问这些物理地址中的多少部分**。 - **32位系统的数据总线和地址总线宽度都为32位**,因此,一次最多能够处理32位的数据,