自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(195)
  • 资源 (9)
  • 收藏
  • 关注

原创 linux下制作deb安装包

ubuntu下使用dpkg制作deb安装包详细教程

2024-12-12 20:08:00 941

原创 windows下Qt5自动编译配置QtMqtt环境(11)

全网最详细、最简单的QtMqtt配置教程,无需手动拷贝。windows下Qt5自动配置QtMqtt

2024-12-08 21:16:28 1146

原创 ubuntu下Qt5自动编译配置QtMqtt环境(10)

linux全自动编译配置Qtmqtt环境,无需手动拷贝。

2024-12-07 20:32:40 768

原创 Qt6配置Mysql驱动(Windows)

Qt默认是不包含Mysql驱动的,需要自己编译;Qt6编译MySql驱动的方式和Qt5有所不同;本文主要讲解如何编译Qt6 Mysql驱动。

2024-12-06 23:16:04 603

原创 linux下Qt程序部署教程

在linux中使用linuxdeployqt工具打包Qt动态库;使用appimagetool工具将可执行程序和动态库制作为单个文件的可执行程序。

2024-11-29 22:22:23 1849

原创 Qt开发经验 --- 避坑指南(1)

Qt开发过程中出现的异常

2024-11-27 10:02:29 657

原创 ubuntu设置程序开机自启动

两种方式实现ubuntu配置开机自启动

2024-11-26 16:57:46 1404

原创 C++(Qt)软件调试---内存分析工具Heob(26)

绝对最全面最详细的Heob使用说明。(图文并茂)绝大部分的文章都说Heob是一个内存泄漏分析工具,其实Heob只是内存泄漏分析功能比较突出,实际上Heob可以分析很多内存问题。Heob是一个Windows下检测缓冲区溢出(野指针、空指针、内存越界、重复释放、异常捕获等)和内存泄漏的工具,集成到Qt Creator中,功能强大,简单容易上手。

2024-11-16 15:00:28 1497

原创 C++(Qt)软件调试---内存泄漏分析工具MTuner (25)

使用MTuner快速分析定位C++程序内存泄漏

2024-11-14 00:11:57 1189

原创 C++(Qt)软件调试---符号转换工具cv2pdb (24)

cv2pdb的三种使用方式,将mingw编译生成的程序导出pdb符号文件,便于调试。

2024-11-13 21:23:21 1026

原创 C++(Qt)软件调试---无法校验pdb时间戳(23)

使用两种方法解决windbg加载pdb符号表时时间校验失败问题。

2024-11-13 19:18:49 1065

原创 C++(Qt)软件调试---静态分析工具cppcheck(22)

Cppcheck是 C/C++ 代码的静态分析工具。它提供独特的代码分析来检测错误,并专注于检测未定义的行为和 危险的编码结构。目标是获得极少的误报。 它能够帮助开发者发现潜在的问题,如内存泄漏、数组越界、未初始化变量的使用等,从而提高代码的质量和安全性。

2024-11-12 21:18:38 833

原创 C++(Qt)软件调试---内存调试器Dr.Memory(21)

Dr. Memory 是一种开源内存监控工具,能够识别与内存相关的编程错误。例如- 内存泄漏检测- 内存越界检测- 重复释放内存- 空指针、野指针检测- 堆栈溢出检测- 内存分配和释放跟踪- (在 Windows 上)句柄泄漏检测- GDI API 使用错误以及访问未保留的线程本地存储槽

2024-09-29 15:33:02 1620 2

原创 C++(Qt)软件调试---断点高级用法(20)

断点是调试程序时常用的工具之一,它允许开发人员暂停程序的执行,以便检查程序的状态。除了基本的断点设置外,还有许多高级用法可以让调试过程更加高效和精确。以下是使用断点的一些高级技巧,包括条件断点、忽略断点、一次性断点、日志断点、异常断点、函数入口断点以及断点的管理和优化等。本文中会详细说明在VS Code、Visual Studio、Qt Creator这三种IDE中断点的高级用法。注意:可能调试工具不同,支持的断点有一些区别。

2024-09-19 15:51:03 2408

原创 QXlsx编译静态库-配置为Qt模块

* 在使用QXlsx时由于源码文件比较多,如果直接加载进项目里面,会增加每次编译的时间;* 直接将源码加载进项目工程中,会导致项目文件非常多,结构变得更加臃肿;* 所以在本文中将会将QXlsx编译为静态库再使用;* 配置为Qt模块后在pro文件中可以通过`QT += qxlsx`加载库,不需要LIBS链接;

2024-09-10 20:46:46 910

原创 C++(Qt)-GIS开发-QGraphicsView显示在线瓦片地图

支持加载显示在线瓦片地图(墨卡托投影);瓦片切片规则以左上角为原点(谷歌、高德、ArcGis等),不支持百度瓦片规则;支持显示瓦片网格、编号信息。支持在线程池中快速下载在线瓦片;以北纬85.05,西经-180为坐标原点【绝对像素坐标】。默认支持下载显示多格式高德、Bing、ArcGis瓦片地图。支持x/y/z、x/z/y、z/y/x任意顺序格式、quadKey格式的url。

2024-08-30 22:14:32 2049 2

原创 C++(Qt)-GIS开发-QGraphicsView显示瓦片地图简单示例2

支持多线程加载显示本地离线瓦片地图(墨卡托投影);瓦片切片规则以左上角为原点(谷歌、高德、ArcGis等),不支持百度瓦片规则;支持显示瓦片网格、编号信息。支持鼠标滚轮缩放切换地图层级。支持鼠标拖拽。采用z/x/y层级瓦片存储格式。在单文件中实现所有主要功能,简单便于理解。以北纬85.05,西经-180为坐标原点【绝对像素坐标】。

2024-08-30 21:23:55 2980 2

原创 Qt5离线安装包无法下载问题解决办法

Qt5离线安装包目前在国内已经被墙了,无法下载,只能下载在线安装包;直接访问会显示`Download from your IP address is not allowed`;本文就提出两种解决办法。

2024-07-14 22:49:57 13190 15

原创 C++(Qt)-GIS开发-QGraphicsView显示瓦片地图简单示例

支持多线程加载显示本地离线瓦片地图(墨卡托投影);瓦片切片规则以左上角为原点(谷歌、高德、ArcGis等),不支持百度瓦片规则;支持显示瓦片网格、编号信息。支持鼠标滚轮缩放切换地图层级。支持鼠标拖拽。

2024-07-06 20:21:20 2095 1

原创 C++(Qt)-GIS开发-简易瓦片地图下载器

1. 支持单线程、多线程下载瓦片地图。2. 使用QNetworkAccessManager、QNetworkReply实现http、https下载功能;3. 支持下载多样式arcGis瓦片地图;4. 支持下载多样式高德瓦片地图;5. 支持多样式Bing地图下载;

2024-07-06 10:47:32 1658 1

原创 Qt-qrencode生成二维码

将qrencode使用Qt封装为一个生成、显示二维码的控件;支持使用QPainter绘制显示二维码;可通过函数接口返回生成的二维码QImage;可通过调用函数将生成的二维码保存到指定路径;支持使用源码嵌入工程(更好的跨平台、支持各种编译器);支持使用编译好的静态库(MSVC2017-64);

2024-05-30 20:21:26 2023

原创 Qt-FFmpeg开发-打开摄像头直接显示YUYV422图像(12)

在这个示例程序中主要使用Qt + FFmpeg开发一个相机,使用FFmpeg打开摄像头,并且【不需要解码】,直接显示获取到的【YUYV422】格式的AVPacket图像;

2024-05-13 23:45:51 1443 2

原创 软件开发技巧---TODO特殊事项标注

🧘🏻软件开发中的TODO是一种用于标记待办事项或未完成任务的注释方法,它有助于提高代码质量和开发效率。

2024-04-29 00:38:22 2522 1

原创 LLVM学习---clang-format代码格式化

🫵别看了,如果你还在饱受🐷队友💩山代码的折磨,那就不要错过Clang-Format。clang-format是一个非常实用的工具,它不仅可以帮助个人开发者提高编码效率,还能在团队协作中确保代码风格的统一,从而减少代码审查时的格式问题,专注于代码逻辑本身。

2024-04-28 00:28:20 2520 1

原创 新版本Qt Creator安装配置

Qt Creator集成了很多工具、插件,在开发过程中都非常好用,但是由于离线安装包的Qt库和QtCreator是绑定在一起的,很多时候安装Qt时都使用安装包中自带的QtCreator。而Qt离线安装包自带的QtCreator版本都比较低,对很多工具、插件的支持都不是很好,例如Qt5.14.2安装包中的QtCreator是4.11.1版本,而最新版本已经到10、11。

2024-04-27 21:05:45 4231 3

原创 C++(Qt)软件调试---crashpad捕获崩溃(19)

Crashpad 是一个由 Google 开发的开源库,是 Google Breakpad 库的继任者。用于在应用程序崩溃时捕获和处理崩溃信息。

2024-04-25 00:40:57 3255 13

原创 C++参考手册使用说明

C++参考手册是学习、使用和理解C++编程语言的重要工具,对于开发人员来说是必备的资源之一。可直接打开使用、配置到Qt中的C++离线参考手册。

2024-04-21 13:17:32 3155 2

原创 C++智能指针基础用法详解

智能指针是C++中用于管理动态分配资源的强大工具,通过正确使用智能指针,可以显著减少内存泄漏的可能性,并提高代码的安全性和可维护性。

2024-04-21 00:21:54 1407 1

原创 QEventLoop野指针异常

当使用QMainWindow时,在子控件的showEvent、resizeEvent事件函数中使用事件循环,则在程序启动时会出现崩溃。

2024-03-24 20:26:47 601

原创 C++(Qt)软件调试---静态分析工具clang-tidy(18)

现在很多人在开发中完全忽略了编译器、IDE的警告提示,这怎么可能写出稳定的程序。clang-tidy是一个由LLVM项目提供的开源工具,是一个静态分析工具,用于进行静态代码分析和代码质量改进。

2024-01-22 20:26:08 3198 1

原创 C++(Qt)软件调试---自动注册AeDebug(17)

快速自动将调试器注册到AeDebug

2023-11-08 22:50:22 512

原创 C++(Qt)软件调试---下载和安装最新版Windbg(16)

新版本的WinDbg有三种安装方式,分别是两种在线安装和一种下载安装包离线安装。(推荐使用离线安装)

2023-11-07 23:31:32 1290

原创 C++(Qt)软件调试---线程死锁调试(15)

死锁是一种情况,其中两个或多个线程(或进程)相互等待对方释放资源,导致它们都无法继续执行。这是一种非常令人头疼的问题,因为它可以导致程序挂起,无法继续运行。本文中会详细讲述linux、Windows下调试C++线程死锁、Qt线程死锁的方式。

2023-10-25 15:59:57 2045

原创 C++(Qt)软件调试---linux使用dmesg定位程序崩溃位置(14)

在我们日常开发中,经常会遇见程序崩溃退出的情况,一般在linux下我们可以通过生成core文件来进行调试,定位出现异常位置,但是如果我们忘记了生成core文件或者程序在用户机器上运行没有生成core,就无法通过调试core文件定位异常,这时就可以使用dmesg中的信息帮助调试。

2023-10-19 16:32:09 1695

原创 C++(Qt)软件调试---GCC编译参数学习-程序检测(13)

在前面学习了C++常用编译器(MSVC、GCC、MinGW)的一些常用的编译器参数,主要是用于【预处理】、【编译】、【优化】、【调试】等方面的选项/参数,有助于我们优化程序性能或者调试软件bug;而我们常说的编译器其实并不是一个软件,而是一套强大的编译器工具集。在本章内会学习GCC编译器的【警告选项】、【程序检测选项】,从静态、动态两方面检测、调试我们的程序,提高软件质量,减少bug数量。

2023-09-14 21:39:11 2017 2

原创 C++(Qt)软件调试---gdb调试入门用法(12)

学习GDB可以帮助程序员更好地调试程序,找到程序中的错误和问题,提高程序的质量和稳定性。在开发大型软件时,程序中可能存在许多错误和问题,这些问题可能会导致程序崩溃或者出现不可预期的行为。使用GDB可以帮助程序员更快地找到这些问题,并且提供一些调试工具来帮助程序员更好地理解程序的行为。

2023-08-16 21:12:08 3732

原创 C++(Qt)软件调试---将调试工具安装到AeDebug(11)

将多种调试工具安装到Aedebug作为事后调试器。

2023-08-09 21:03:34 735

原创 spdlog入门教程(1)

日志库是一种用于记录和管理应用程序运行时信息的工具。它的主要作用是收集、存储和展示应用程序的日志信息,以便开发人员进行故障排查、性能优化和行为分析。

2023-07-09 16:19:59 4919 5

原创 如何提升软件质量及开发效率

保证软件质量,是一个贯穿整个软件生存周期的重要问题,而不仅仅只是测试,软件测试只是能发现问题,就像温度计只能判断你是否感冒,从源头降低问题出现的概率才是重点。

2023-07-03 23:33:47 7336

原创 C++(GCC)生成和使用静态库

静态库是一种可重用的代码模块集合,具有提高编译速度、代码可移植性、简化部署、减少运行时开销以及提高可靠性等优点。

2023-04-24 12:10:29 2700 3

linux打包Qt程序工具包

包含下列文件 appimagetool-aarch64 appimagetool-x86_64 fuse-3.16.2.tar linuxdeploy-aarch64 linuxdeploy-plugin-appimage-x86_64 linuxdeploy-plugin-qt-aarch64 linuxdeploy-plugin-qt-x86_64 linuxdeployqt-continuous linuxdeployqt-continuous-x86_64 linuxdeploy-x86_64 patchelf-0.18.0-aarch64.tar patchelf-0.18.0-x86_64 runtime-aarch64 runtime-x86_64 linux下Qt程序部署教程.pdf

2024-11-29

C++(Qt)软件调试-内存分析工具Heob(26)相关资源

包含PDF格式文档 markdown格式文档 使用到的工具

2024-11-16

内存泄漏分析工具MTuner

使用到的程序

2024-11-14

C++(Qt)软件调试-符号转换工具cv2pdb (24)

使用的cv2pdb工具

2024-11-13

C++(Qt)软件调试-内存调试器Dr.Memory(21)

Dr. Memory 是一种开源内存监控工具,能够识别与**内存相关**的编程错误。例如 - 内存泄漏检测 - 内存越界检测 - 重复释放内存 - 空指针、野指针检测 - 堆栈溢出检测 - 内存分配和释放跟踪 - (在 Windows 上)句柄泄漏检测 - GDI API 使用错误以及访问未保留的线程本地存储槽 在性能上Dr. Memory 比包括 Valgrind 在内的同类工具更快。(有时候还是有点慢) 本文会讲解如何使用Dr.Memory以及在Qt Creator和Visual Studio中集成Dr.Memory。

2024-09-29

C++(Qt)软件调试-断点高级用法(20)

断点是调试程序时常用的工具之一,它允许开发人员暂停程序的执行,以便检查程序的状态。 <mark>除了基本的断点设置外,还有许多高级用法可以让调试过程更加高效和精确。< 以下是使用断点的一些高级技巧,包括条件断点、忽略断点、一次性断点、日志断点、异常断点、函数入口断点以及断点的管理和优化等。 本文中会详细说明在VS Code、Visual Studio、Qt Creator这三种IDE中断点的高级用法。 注意:可能调试工具不同,支持的断点有一些区别。

2024-09-19

Qt-qrencode生成、显示二维码控件

将qrencode使用Qt封装为一个生成、显示二维码的控件; 支持使用QPainter绘制显示二维码; 可通过函数接口返回生成的二维码QImage; 可通过调用函数将生成的二维码保存到指定路径; 支持使用源码嵌入工程(更好的跨平台、支持各种编译器); 支持使用编译好的静态库(MSVC2017-64);

2024-05-30

LLVM-18.1.4-win64安装包 和clang-format配置

LLVM-18.1.4-win64安装包 和clang-format配置

2024-04-28

C++参考手册使用说明

支持html、chm、qch、dep四种格式的C++离线参考手册,非常便于使用。

2024-04-21

C++(Qt)软件调试-静态分析工具clang-tidy(18)

C++(Qt)软件调试-静态分析工具clang-tidy(18)

2024-01-22

最新版WinDbg离线安装包

最新版WinDbg离线安装包

2023-11-07

C++(Qt)软件调试-线程死锁调试(15)

死锁是一种情况,其中两个或多个线程(或进程)相互等待对方释放资源,导致它们都无法继续执行。这是一种非常令人头疼的问题,因为它可以导致程序挂起,无法继续运行。 本文中会详细讲述linux、Windows下调试C++线程死锁、Qt线程死锁的方式。

2023-10-25

C++(Qt)软件调试-GCC编译参数学习-程序检测(13)

在前面学习了C++常用编译器(MSVC、GCC、MinGW)的一些常用的编译器参数,主要是用于【预处理】、【编译】、【优化】、【调试】等方面的选项/参数,有助于我们优化程序性能或者调试软件bug; 而我们常说的编译器其实并不是一个软件,而是一套强大的编译器工具集。 在本章内会学习GCC编译器的【警告选项】、【程序检测选项】,从静态、动态两方面检测、调试我们的程序,提高软件质量,减少bug数量。

2023-09-14

C++(Qt)软件调试-gdb调试入门用法(12)

gdb调试入门用法pdf版本

2023-08-16

spdlog入门教程(1)

Qt使用spdlog示例代码,包含编译好的spdlog库; 使用的编译器为msvc2017-64

2023-07-09

C++(Qt)软件调试-使用drmingw进行调试(10)20230410.pdf

- Dr.MinGW是一个实时(JIT)调试器,使用命令行运行。 - 当应用程序抛出未经处理的异常时,Dr.MinGW会将自己连接到应用程序,并使用可用的调试信息收集有关异常的信息。 - Dr.MinGW可以读取由GUN C/C++编译器(Linux 下GCC、Windows下MinGW)生成的DWARF格式的调试信息,以及由Microsoft Visual C++编译器生成的PDB文件中的调试信息。它依赖于DbgHelp库来解析由Microsoft工具编译的模块中的符号。 - 解析符号和转储堆栈回溯的功能是以DLL的形式提供的,因此它可以嵌入到您的应用程序/工具中。

2023-04-10

C++(Qt)软件调试-Qt编译优化和生成调试信息(9)20230409.pdf

通过查看Qt编译生成的Makefile文件可以学习到Qt内部对不同编译模式做了哪些工作; Qt默认的三种编译模式基本可以适用于大部分开发调试的场景; 当我们遇见特殊的问题时就需要手动修改编译器选项,在程序编译时选择合适的优化参数和生成调试信息参数,在运行性能、程序大小、调试方便三个方向进行权衡利弊。

2023-04-09

C++(Qt)软件调试-验证GCC编译优化和生成调试信息(8)20230408.pdf

我们可以通过学习GCC编译器参数,在程序编译时选择合适的优化参数和生成调试信息参数,在运行性能、程序大小、调试方便三个方向进行权衡利弊。 例如在不需要考虑性能时可以完全关闭优化,生成尽可能多的调试信息,以方便调试; 而有些程序运行需要一定的性能,就可以选择开启一定较低级别的优化。

2023-04-08

C++(Qt)软件调试-编译器及编译参数学习(4)V1.0.0.pdf

在学习C++软件调试之前,了解编译器参数是非常重要的。因为编译器参数决定了程序编译的行为,包括编译器如何处理源代码、如何生成目标代码、如何链接库文件等等。 如果不了解编译器参数,可能会导致以下问题: 1. 编译错误:由于编译器参数的错误使用,可能导致编译错误,导致程序无法编译通过。 2. 目标代码错误:由于编译器参数的错误使用,可能导致生成的目标代码出现错误,导致程序无法正常运行。 3. 性能问题:编译器参数的不合理使用,可能导致程序性能下降。 4. 调试困难:由于编译器参数的错误使用,可能导致生成的目标代码缺少调试信息,导致调试过程困难。 因此,学习编译器参数可以帮助我们更好地理解和掌握C++程序的编译过程,更好地解决编译和调试过程中的问题,提高程序的性能和可维护性。

2023-04-05

Windows下增强版任务管理器

曾想过哪个程序打开了特定的文件或目录? 现在可以了解了。 进程资源管理器 显示有关哪些句柄和 DLL 进程已打开或加载的信息。 进程资源管理器显示由两个子窗口组成。 顶部窗口始终显示当前活动进程的列表,包括其所属帐户的名称,而底部窗口中显示的信息取决于 进程资源管理器 所处模式:如果它处于句柄模式,你将看到顶部窗口中选择的进程已打开的句柄;如果 进程资源管理器 处于 DLL 模式,你将看到进程已加载的 DLL 和内存映射文件。 进程资源管理器 还具有强大的搜索功能,可快速显示哪些进程打开了特定的句柄或加载了 DLL。 进程资源管理器的独特功能可用于跟踪 DLL 版本问题或处理泄漏,并提供 Windows 和应用程序工作方式的见解。

2023-04-04

Windows下用于生成Dump文件的工具

此命令行实用工具旨在捕获其他情况下难以隔离和重现 CPU 峰值的进程转储。 它还充当常规进程转储创建实用工具,还可以在进程具有挂起窗口或未经处理的异常时监视和生成进程转储。

2023-04-04

C++(Qt)软件崩溃调试-学会使用ProcDump.7z

这里是HTML版本的,支持GIF动态图 如果想要PDF版本的看这里https://download.csdn.net/download/qq_43627907/87647326 1. 之前用过的方法DbgHelp、qBreakpad生成Dump、Linux下配置ulimit -c unlimited生成core的方式功能都比较单一,并且需要配置环境,在程序中调用库,使用较为复杂。 2. 而ProcDump 使用非常简单,不需要配置环境,不需要修改代码,将程序下载到本地后,通过命令行设置监听条件、需要监听的程序,然后就可以在条件满足或者目标程序崩溃时快速生成进程转储文件。 3. 在Windows中还可以为MinGW编译的程序生成dump文件,这是之前的几种方法不支持的。 4. 并且procdump和之前的几种捕获dump/core的方式并不冲突,可以一起使用。

2023-04-03

C++(Qt)软件崩溃调试-学会使用ProcDump(5)20230403.pdf

1. 之前用过的方法DbgHelp、qBreakpad生成Dump、Linux下配置ulimit -c unlimited生成core的方式功能都比较单一,并且需要配置环境,在程序中调用库,使用较为复杂。 2. 而ProcDump 使用非常简单,不需要配置环境,不需要修改代码,将程序下载到本地后,通过命令行设置监听条件、需要监听的程序,然后就可以在条件满足或者目标程序崩溃时快速生成进程转储文件。 3. 在Windows中还可以为MinGW编译的程序生成dump文件,这是之前的几种方法不支持的。 4. 并且procdump和之前的几种捕获dump/core的方式并不冲突,可以一起使用。

2023-04-03

C++(Qt)软件崩溃调试-学会使用ProcDump (5)20230402.pdf

1. 之前用过的方法DbgHelp、qBreakpad生成Dump、Linux下配置ulimit -c unlimited生成core的方式功能都比较单一,并且需要配置环境,在程序中调用库,使用较为复杂。 2. 而ProcDump 使用非常简单,不需要配置环境,不需要修改代码,将程序下载到本地后,通过命令行设置监听条件、需要监听的程序,然后就可以在条件满足或者目标程序崩溃时快速生成进程转储文件。 3. 在Windows中还可以为MinGW编译的程序生成dump文件,这是之前的几种方法不支持的。 4. 并且procdump和之前的几种捕获dump/core的方式并不冲突,可以一起使用。

2023-04-02

C++(Qt)软件崩溃调试-编译器及编译参数学习(4).pdf

在学习C++软件调试之前,了解编译器参数是非常重要的。因为编译器参数决定了程序编译的行为,包括编译器如何处理源代码、如何生成目标代码、如何链接库文件等等。 如果不了解编译器参数,可能会导致以下问题: 1. 编译错误:由于编译器参数的错误使用,可能导致编译错误,导致程序无法编译通过。 2. 目标代码错误:由于编译器参数的错误使用,可能导致生成的目标代码出现错误,导致程序无法正常运行。 3. 性能问题:编译器参数的不合理使用,可能导致程序性能下降。 4. 调试困难:由于编译器参数的错误使用,可能导致生成的目标代码缺少调试信息,导致调试过程困难。 因此,学习编译器参数可以帮助我们更好地理解和掌握C++程序的编译过程,更好地解决编译和调试过程中的问题,提高程序的性能和可维护性。

2023-04-01

C++(Qt)软件崩溃调试-编译器及编译参数学习(4)

在学习C++软件调试之前,了解编译器参数是非常重要的。因为编译器参数决定了程序编译的行为,包括编译器如何处理源代码、如何生成目标代码、如何链接库文件等等。 如果不了解编译器参数,可能会导致以下问题: 1. 编译错误:由于编译器参数的错误使用,可能导致编译错误,导致程序无法编译通过。 2. 目标代码错误:由于编译器参数的错误使用,可能导致生成的目标代码出现错误,导致程序无法正常运行。 3. 性能问题:编译器参数的不合理使用,可能导致程序性能下降。 4. 调试困难:由于编译器参数的错误使用,可能导致生成的目标代码缺少调试信息,导致调试过程困难。 因此,学习编译器参数可以帮助我们更好地理解和掌握C++程序的编译过程,更好地解决编译和调试过程中的问题,提高程序的性能和可维护性。

2023-04-01

linux下C++和Qt生成和调试Core文件(3)

Core文件是在程序崩溃或异常终止时由操作系统生成的一个二进制文件,它包含了进程在崩溃前的内存映像。Core文件的作用是帮助程序员分析程序崩溃的原因,进行程序调试。 当程序崩溃时,Core文件中存储了进程的堆栈、寄存器、内存等信息。程序员可以使用调试工具如GDB来分析Core文件,以确定程序崩溃的原因。通过分析Core文件,程序员可以了解程序在崩溃前发生的情况,包括变量的值,函数调用的堆栈信息等,从而找到程序中的错误。 Core文件还可用于恢复程序状态。如果程序在处理大量数据时崩溃,程序员可以使用Core文件来恢复程序状态,从崩溃点开始进行调试,以便更快地找到问题并修复它。 总之,Core文件是程序调试和故障排除中的重要工具,可以帮助程序员快速定位并解决程序中的错误。

2023-04-01

MSVC2017-64编译的QCefView库文件,可下载直接使用

MSVC2017-64编译的QCefView库文件,可下载直接使用; 包含Release和Debug版本,示例程序。

2023-03-26

Windows下Qt5.12.5-MSVC5017-64编译QCefView源码

已经准备好的QCefView源码和依赖的cef源码,可直接编译。

2023-03-26

Qt-文件路径使用方式和注意事项

* 在程序开发中我们会经常使用到路径功能,例如:读取`./`路径下的配置文件,将日志文件、运行数据保存到当前路径,将视频文件保存到系统的视频文件夹下等; * 路径分为相对路径、绝对路径; * 在Windows下文件/文件夹又有实际路径,快捷方式路径; * 在Linux下文件/文件夹又有实际路径,软/硬链接路径; * 程序运行方式有Qt编译运行,双击可执行程序运行,双击快捷方式运行,命令行`./`运行等; * 这些不同的组合就会导致使用的路径存在不同的情况,也决定了你写的程序能不能正常的运行,所以我就整理了一下Qt中使用路径的方式和注意事项,避免以后程序出现问题。 * 实际开发中使用相对路径不是很安全,使用绝对路径又由于不同的电脑中路径不一定相同,所以最好的方式是将相对路径根据系统环境不同、运行方式不同转为绝对路径,或者使用系统中的默认路径(例如图片/视频/文件/下载/用户)。

2023-02-23

Qt全局鼠标、键盘事件监听器库

使用Qt封装的支持Windows、Linux的跨平台全局鼠标、键盘事件监听器库

2022-12-10

音视频开发-FFmpeg-n5.1.2开发库

这里是我程序中使用的FFmpeg库文件

2022-10-14

qBreakpad 崩溃报告工具

包含pdf版本说明手册、breakpad源码、linux-syscall-support-master源码、qBreakpad源码、Qt+MSVC2017-64编译后的qBreakpad模块

2022-08-30

WIndows下超详细的QtMqtt编译配置教程

WIndows下超详细的QtMqtt编译配置教程,包含了QtMqtt源码下载、编译配置、QtMqtt帮助手册生成配置。

2022-07-11

QSS样式表入门练习Demo.pdf

超详细的Qss入门练习Demo,包含了效果图和实现样式表; [可看博客](https://blog.csdn.net/qq_43627907/article/details/125677496)

2022-07-08

Qt-OpenCV-MinGW编译配置

Windows下使用MinGW编译配置Qt-OpenCV开发环境

2022-07-05

Windows10系统中使用mingw73_64编译的OpenCV开发包,Qt版本V5.12.12,下载解压就可以使用。

Windows10系统中使用mingw73_64编译的OpenCV开发包,Qt版本V5.12.12,下载解压就可以使用。

2022-05-14

Qt使用mingw73_64编译器编译的MySql驱动动态库

Qt版本:5.12.12 编译器版本:MinGW73-64 说明:已经编译好的MySql驱动动态库,包含libqsqlmysql.a、libqsqlmysqld.a、qsqlmysql.dll、qsqlmysqld.dll四个文件; 使用方式:将这四个文件复制到D:\Qt\Qt5.12.12\5.12.12\mingw73_64\plugins\sqldrivers路径下即可(注意这是我的Qt安装路径); 编译方式:https://blog.csdn.net/qq_43627907/article/details/124621005?spm=1001.2014.3001.5501

2022-05-06

MySql开发包-连接器/C

Qt编译MySql驱动时需要使用到的MySql动态库开发包,无需安装,只需要解压就可以使用,不需要安装几百兆的MySql。 版本V6.1.11

2022-05-06

C#-TeeChart-图表绘制库

包含https://blog.csdn.net/qq_43627907/article/details/107678058?spm=1001.2014.3001.5502里用到的TeeChart.dll、TeeChart.WPF.dll、TeeChart7.ocx库

2022-04-17

空空如也

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

TA关注的人

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