自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 Windows配置boost库(低出错版)

Boost 是一套,由全球 C++ 开发者社区维护。它包含我这里选择1.70.0版本进行下载,并且下载的版本。下载好后,点击exe文件运行,会生成一个.\boost_1_170_0文件夹,进入这个文件夹,接下来先采取常规方式运行,并且我会告诉你容易出什么错。

2025-07-15 13:51:30 395

原创 QT Debug Error! abort() has been called

仔细排查后发现,错误是在#37进程的一个函数内产生的(这不废话,但是我确定了大概的位置),于是根据上述本人文章的debug规则,设置断点,再次重启程序,排查bug。经过进一步的排查,在上述错误报出的时候,等待2秒,发现#7进程没有自动终止运行,而#37进程已经终止了运行(正常情况下是不会停止运行的,因为这个时候还没到代码结束的时候)。本质上来说,这个错误是指针指向了错误的存储空间导致的,所以归根结底也属于指针的问题,只不过由于代码行数太多,进程和线程之间的关系很复杂,所以排查难度上升了不少。

2025-06-09 15:07:54 390

原创 qt C++找bug思路全过程(纯分享贴,没有解决什么问题)

程序是关于显微镜控制的,众所周知,显微镜有XY平台的移动(网上搜索显微镜平台吧,这里不展开讲这是什么)。其次,这个bug是在程序运行到XY平台移动的代码的时候100%会报的错,XY平台控制的代码我能确定在哪里,所以就对这个地方展开排查。找一个bug也不是容易的事情,一个bug整整找了五轮断点设置和一上午的时间,因为要不停启动机器、运行机器进行排查问题,所以花费的时间还是不少的。再次运行,发现程序到了第5个断点和第6个断点中间的某个代码会报错,证明不是XY平台控制代码的锅,而是另有其人。

2025-06-06 12:33:22 196

原创 QT在debug时进入Disassemble(反汇编程序)界面解决方法

同时要保证工程文件夹内的所有文件(包括子文件夹、子子文件夹、子子子文件夹......)没有任何中文和中文标点。这几天调试程序时,发现在debug进入断点后,程序会进入Disassemble界面。在工程文件夹下再建一个英文文件夹,将所有工程文件拖入该文件夹下,问题解决。没中文,那这个问题为什么会产生,这折磨了我好几天,md。这个问题直接导致我无法有效进行程序debug。首先看一下自己的工程路径有没有中文。

2025-06-06 10:25:15 301

原创 Debug下Qt弹出The CDB process terminated崩溃

唯一一个不太引人注意的报错点,就是你配置的第三方库(.dll、.lib、.so等等)没有放进工程文件夹中的debug文件夹中!检查哪个新加入的第三方库没有放进去,你直接把缺失的库复制粘贴进去,CBD崩溃就解决了!弹出这个错误的时候,首先要检查。这个错误真的恶心至极。,这些网上都查得到。

2025-05-30 11:01:09 276

原创 Visual Studio 2022中创建lib、dll库并使用(图文详解)

名称修饰是C++编译器为了支持函数重载而对函数名进行的编码。然而,这种修饰后的名称在C语言中是不可见的,因此在C++代码中调用C语言编写的函数时,需要使用。是一个Microsoft特定的扩展,用于在DLL中导出函数、变量或类。当你在DLL中定义一个函数时,使用。是一个Microsoft特定的扩展,用于在模块中导入DLL中的函数、变量或类。可以告诉编译器将该函数导出到DLL的导出表中,使得其他模块可以链接和调用它。时,编译器会告诉链接器该符号是从DLL中导入的,而不是在当前模块中定义的。

2025-05-09 12:30:00 1512

原创 Qt [] [=] [&]

在qt中,经常可以看见[] [=] [&]。它们都是Lambda表达式中的捕获列表。[=]会捕获作用域内的变量的值,在Lambda表达式中修改该变量并改变外部变量。

2025-05-06 10:58:03 241

原创 Shell MySQL使用,简例

哪里有代码,哪里就能用mysql。今天发现shell也能用mysql。记录一下学习到的指令。

2025-04-27 17:24:42 401

原创 shell脚本的简单应用(文件管理、用户信息管理、备份文件)

【代码】shell脚本的简单应用(文件管理、用户信息管理、备份文件)

2025-04-27 15:57:19 193

原创 Git Bush 一些常用指令合集(自用)

bush:fetch :从远程仓库下载代码到本地push:从本地代码上传到远程仓库无输出,但可通过 git remote -v 验证是否删除成功。

2025-04-25 12:14:51 229

原创 Visual Studio 2022 C++ 链接 MYSQL 总结

安装完成后,进入MySQL的bin目录,博主电脑的路径为:C:\Program Files\MySQL\MySQL Server 8.0\bin。Select Versions:选择自己想要的MySQL版本,选择最高版本即可,MySQL版本一般不会和Visual Studio的版本冲突;博主的电脑是Windows的,所以进入 MySQL Installer for Windows。,第一行会让你输入上面你设置的密码,输入密码后,出现下面的窗口即表示安装成功。这个网站,下载自己设备相应版本的MySQL。

2025-04-25 09:54:00 1937

原创 C++静态变量作用域的讨论与学习(LNK2001错误)

那么这两种情况下,在mainwindow.cpp中使用a.h的test静态变量,其实编译器会生成mainwindow.cpp的副本,而这个副本下的a::test静态变量也仅属于mainwindow.cpp,在mainwindow.cpp中改变a::test,第一不会改变a.h中的test变量,第二也不会改变其他使用a.h下的test变量的文件中的该变量值。同理,即使在c.h中声明静态变量,也不能在c.cpp下使用该静态变量,虽然不会百分百报错,但最好不要这样做,同样也会报LNK2001的错误。

2025-04-15 16:22:29 202

原创 对do-while的总结

为什么需要总结呢,因为博主在学校学习过程中多用到的是python,虽然python中没有do-while,但是博主在今天C++的工作过程中遇到了do-while,想要按照自己的语言总结一点:为什么python不需要do-while,而C++需要。在这种情况下,虽然python和C++都有同样的代码行数和运算成本,但是明显感觉do-while舒服多了好吧!强迫症晚期患者好评!do-while语句,是先做do里的代码,然后进行判断,判断为true后,继续执行do内的代码,反之退出循环。

2025-04-08 17:54:17 131

原创 虚函数与动态库函数的调用冲突:缺失实现下的多态行为分析

②当一个 h头文件有对应的 cpp源文件,且 h头文件中声明了与 zemotion.dll 动态库文件中的 setXYPosition 函数的同名函数,且对应的 cpp源文件中同样有 setXYPosition 函数的具体实现。③但如果在②条件下,在 cpp源文件中的 setXYPosition 函数下又写了一个 ::setXYPosition,则此时若程序运行到此处时,程序实际上调用的会是 zemotion.dll 动态库文件中的 setXYPosition 函数!时,将实际执行派生类的实现。

2025-04-07 18:00:43 313

原创 关于学习qt C++引用动态库dll

博主以前多使用的是进行串口通信的方式对硬件设备进行控制,实习期间接触了程序直接引用动态库中的函数,对硬件设备进行控制的方法。此方法只需要在头文件中对动态库中的函数进行声明即可,具体的实现由动态库中进行配置。需要注意的是,虽然这里zaux.h和zaux.dll是同名,但不意味着引用动态库的头文件名字就必须和动态库名字一样,只是这种命名习惯有利于后续维护和测试。右键本工程文件 —> 添加库 —> 选择 “外部库” —> 下一步 —> 指定该外部库的库文件和文件路径 —> 下一步 —> 完成。

2025-04-07 16:23:58 515

原创 将电脑的以太网网段iPv4地址进行手动配置

控制面板 —> 网络和Internet —> 网络和共享中心 —> 更改适配器设置 —> 双击“以太网” —> 属性 —> 双击“Internet 协议版本4(TCP/IPv4)” —> 将 “自动获得 IP 地址” 改成 “使用下面的IP地址” —> 将IP地址改成 192.168.0.xxx(xxx的范围应该在2-254之间),子网掩码改成 255.255.255.0。将该设备与电脑的网口进行连接,且需对电脑的以太网网段进行更改,改成与该电控设备一个以太网网段。

2025-04-07 14:11:46 2107

原创 在C++ QT的QGrahicsView中增加图片比例尺的功能

博主做的项目是带显微镜的,所以需要将比例尺放到UI中使用。首先,在显微镜摄像头中会获得细胞画面,该画面会被拍摄进入。目标为:将物理世界中的30微米,转换为电脑的像素长度。中增加比例尺的功能,计算现实中的。而电脑上获取一张画面将保存为。厘米在图片中是多少微米。首先要获得电脑屏幕的。厘米,则如果想要获得。

2025-04-07 09:08:10 277

原创 C++灰度图转伪彩色图片

灰度图是指只有一个通道,每个像素的灰度值都在0~255的图片,现需要将灰度图转换为伪彩色图片,即将灰度图的单通道,分别放到RGB的每个通道中。的关系,再根据关系分别转换 RGB[graypixel, 0, 0]、RGB[0, graypixel, 0]、RGB[0, 0, graypixel]此方法用opencv做,但是要注意,opencv的图片不是RGB,而是BRG。的方法:获得图片中每一个像素的灰度值,判断其灰度值与。

2025-04-07 08:57:39 204

空空如也

空空如也

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

TA关注的人

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