- 博客(1801)
- 资源 (91)
- 收藏
- 关注
原创 产生栈溢出的风险,应该怎么排查?在linux环境,怎么去先查查栈的大小,然后再建立对象的方法吗?
栈溢出通常是由于递归调用过深或在栈上分配了过大的局部变量引起的。在 Linux 下,可以通过ulimit -s查看和调整栈大小。使用调试工具(如gdb和valgrind)可以帮助定位栈溢出问题。最佳实践包括避免在栈上分配大数组、优化递归算法以及合理设置栈大小。希望这些内容对你有所帮助!
2025-04-18 17:43:30
742
原创 在Ubuntu系统中安装和升级RabbitVCS
当前遇到的问题是,我想用它看看我当前的代码对应的版本号,然后再决定是否update。但是,好像我看不出来。根本不如在windows使用TortoiseSVN那么好用。目前在ubuntu中使用svn的GUI工具,已经安装了。:如果升级失败,可能是PPA源未正确添加。在Ubuntu系统中安装和升级RabbitVCS。• 升级后需重启Nautilus的说明。如果升级后功能异常,建议参考。• 官方PPA和安装指南。或社区文档进一步排查。
2025-04-18 10:39:56
338
原创 docker能用来干什么的
使用 Docker,可以为每一个租户的应用层的多个实例创建隔离的环境,这不仅简单而且成本低廉,当然这一切得益于 Docker 环境的启动速度和其高效的 diff 命令。是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows操作系统的机器上,也可以实现虚拟化。开发环境的机器通常内存比较小,此前使用虚拟的时候,经常需要为开发环境的机器加内存,而通过 Docker 可以轻易的让几十个服务在 Docker 中跑起来。
2025-04-17 09:57:20
970
转载 Ubuntu 20.04 系统备份和还原
这里必须要提一下,RSYNC这个备份方式为我们提供了一种快速迁移系统并部署的可能性,我们在备份完之后相当于在备份盘有了一个一摸一样的系统,虽然不能直接用,但是我们可以用它直接在任意符合条件的电脑直接重新部署一个一模一样的系统,举个例子:我在我的电脑上的Ubuntu装好了各种环境,然后我把这个系统备份,然后其他人需要这个系统,我们就可以直接在其他人的电脑用这个备份重新部署一个一模一样的系统。提一嘴上文提到的,在另外的一台电脑上部署,也可以这样,我们把这台电脑当做不能进入系统的系统就好了。
2025-04-17 09:52:14
15
原创 开启bitlocker使用windows的加密功能
搜索“屏幕保护程序”,可以设定离开电脑后5或10分钟锁屏,选定恢复时显示登录屏幕。开启bitlocker使用windows的加密功能。在使用的windows上可以使用更多的设置。再在搜索搜索“组策略”,做如下设定。
2025-04-13 17:56:24
142
原创 Mouse without Borders – 用一套鼠标 / 键盘控制四台电脑
Mouse Without Borders 简介 Mouse Without Borders(无界鼠标)是由微软开发的免费键鼠共享工具,支持在局域网内通过一套键盘鼠标控制最多4台Windows电脑,并实现跨设备文件传输、剪贴板同步等操作12。核心功能与用途 多设备键鼠共享 一套键盘鼠标可无缝操控多台电脑,鼠标移动至屏幕边缘即可切换设备,键盘输入自动跟随光标位置13。使用场景与操作特点 适用场景:多设备办公(如同时操作开发机、测试机)、跨电脑数据整理、家庭多PC协同等26。
2025-04-12 17:33:07
472
原创 ubuntu 安装vscode和启用同意灵码AI程序员
Chinese (Simplified) (简体中文) Language Pack for Visual Studio Code。ubuntu 安装vscode和启用同意灵码AI程序员。2、运行VSCode安装一些插件。1、通过 Snap 安装(简易)
2025-04-10 17:31:21
134
原创 Potplayer播放器如何设置画质(Potplayer播放器设置画质的方法)
最后一个设置选项是播放设置,可以选择视频播放速度,以及播放时间等。根据您的需要设置它。、点击第二栏的视频即可进入播放器视频设置。视频亮度和对比度可以在下面的界面中进行设置。、设置界面第一栏是声音设置,点击即可对视频音量,声音具体信息等进行详细调节。、点击第三栏的字幕就可以设置视频的字幕了,包括字体、位置等。设置都是默认,发现播放画面明显偏黄,想问下怎么解决。,具体是如何设置画质的呢,跟随小编去看看吧。,然后点击右下角的设置图标进入设置。播放器设置画质的方法。
2025-03-30 12:59:40
609
原创 运维人员常用的Linux命令汇总
命令,分析一行的信息,若当中有我们所需要的信息,就将该行显示出来,该命令通常与管道命令一起使用,用于对一些命令的输出进行筛选加工等等。命令,对文件进行打包,默认情况并不会压缩,如果指定了相应的参数,它还会调用相应的压缩程序(如gzip和bzip等)进行压缩和解压。命令,是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。命令,用于切换当前目录,它的参数是要切换到的目录的路径,可以是绝对路径,也可以是相对路径。
2024-11-03 10:32:25
420
转载 Qt/c++类型转换总结
而dynamic_cast是一种在运行时期进行类型转换的动态转换操作符,适用于在继承关系中进行向下转型,具有类型检查的能力,但可能具有运行时开销。是 C++ 中的一种强制类型转换操作符,它允许将一个指针或引用转换为不同类型的指针或引用,即使它们之间没有直接的关联。这种转换是不安全的,因为基类对象可能并不是派生类对象,所以需要进行类型检查来确保转换的安全性。的使用应该非常谨慎,因为它是一种非常底层的转换,很容易导致类型错误和未定义行为。需要注意的是,这种转换不进行任何类型检查,因此需要确保转换的安全性。
2024-11-02 09:54:50
157
原创 系统地介绍Qt的QtConcurrent模块
QtConcurrent是Qt框架中的一个高级多线程编程模块,它提供了一组高层次的API,旨在简化多线程编程的复杂性。通过QtConcurrent,开发者可以轻松地实现任务的并行化,提高程序的执行效率和响应性。QtConcurrent是Qt框架中用于简化多线程编程的一个强大工具。通过提供高层次的API和自动管理线程的生命周期和同步问题,QtConcurrent大大降低了并发编程的复杂性。
2024-11-02 09:31:49
900
原创 linux环境下开发一个应用程序,它部署的目录通常有什么约定
在Linux环境下开发一个应用程序时,其部署的目录结构通常遵循一定的约定,这些约定有助于保持系统的整洁性和可维护性。
2024-10-26 11:36:41
953
原创 重写QObjiet虚函数timerEvent()启动定时器
请注意,这个例子中使用了Qt的调试输出功能,因此需要在编译时启用Qt的调试信息输出,以便在控制台中看到定时器触发的消息。启动定时器是一个常见的方法,它允许在Qt应用程序中实现定时功能。下面是一个简单的例子,展示了如何重写。你可以根据需要调整定时器的触发间隔和处理逻辑。函数中,我们检查了触发的定时器ID,并编写了相应的处理逻辑。函数启动了一个定时器,每隔1000毫秒(1秒)触发一次。函数中,你可以编写定时器事件的处理逻辑。函数来停止定时器,以避免内存泄漏。在构造函数中,我们使用。的类,并在该类中重写。
2024-10-19 13:51:06
198
原创 【无标题】
当一个类声明了虚函数,这个虚函数性质具有继承的性质,在以后所有层次继承的类中,都是虚函数。普通虚函数在子类中可以不被重写,但是纯虚函数必须被重写。通过基类的指针访问子类,调用虚函数,调用的都是子类的虚函数。并不是子类一定无法访问基类的虚函数,可以通过域名作用符访问。
2024-10-19 13:36:32
364
原创 使用 QThreadPool例子
函数中,我们首先获取全局线程池实例,并设置其最大线程数为5。然后,我们创建一个循环,在循环中创建新的。方法将它们添加到线程池中。线程池将自动调度和执行这些任务。会自动删除任务对象。因此,你不需要(也不应该)在任务完成后手动删除它们。方法等待所有任务完成,并在完成后输出一条消息。成员变量,用于标识任务,以及一个重写的。在这个例子中,我们创建了一个名为。方法,该方法包含任务的实际代码。请注意,当任务完成时,
2024-10-19 12:19:46
213
原创 linux kill命令的参数差别和一个根据文件名杀死进程的sh解释
kill 39813 和kill -9 39813 有啥差别?在Linux系统中,kill命令用于向进程发送信号。kill 39813和的主要差别在于发送的信号不同,这会导致对目标进程的处理方式不同。
2024-10-17 17:33:34
438
原创 Qt C++ 编程中定义了一个槽函数(slot)deleteLater的作用
可以确保对象在合适的时候被安全地删除,例如在一个操作完成后或者当对象不再被需要时,在事件循环处理完当前的事件队列后再进行删除操作。比如,一个网络请求完成后,对应的处理对象可能不再需要。当一个对象在某个操作过程中可能正在被其他对象引用或处于一个关键状态时,如果直接删除可能会导致程序出现错误或不稳定的情况。是一个非常有用的函数,它会安排接收对象在事件循环返回后被删除。这样可以在特定的时间点触发对象的清理操作,确保资源的合理释放。,在这个函数中执行一些操作后,通过发出。,安排对象在合适的时候被删除。
2024-10-17 09:08:41
479
原创 AI开源项目
综上所述,FastGPT作为一个基于LLM大语言模型的知识库问答系统项目,以其卓越的自然语言处理能力和广泛的应用场景,正逐步成为大模型应用的新标杆。
2024-10-12 14:01:18
501
原创 如何在堆和栈上分别创建一个`QObject`子类对象
在Qt中,是许多Qt类和对象的基类,提供了对象模型的核心功能,如信号和槽机制、事件处理等。当一个对象在堆上创建时,意味着这个对象是通过操作符在堆(heap)内存区域分配的,而不是在栈(stack)上自动分配的。这样做有几个原因,包括延长对象的生命周期、在复杂的应用程序中更好地管理对象间的父子关系等。下面是一个简单的例子,展示了如何在Qt中在堆上创建一个对象,并将其设置为另一个对象的子对象。注意:在Qt中,在堆上创建一个对象通常意味着你使用操作符来分配内存,并返回一个指向该对象的指针。这样做的好处是你可以控
2024-09-22 17:41:47
900
原创 win10win11截图技巧——不用安装其他截图工具或者运行其他截图工具,就可以截图,win10和win11可用
快捷键shift +win+s可以调出来windows自带的截图工具。测试了一下win10和win11都可以用。
2023-09-14 14:36:13
2630
原创 linux下可用的清理工具BleachBit
BleachBit是一款专门为Linux设计的系统清理工具,可以帮助用户释放磁盘空间,提高系统性能。总之,BleachBit是一款非常实用的Linux系统清理工具,可以帮助用户轻松地清理系统中的垃圾文件,并提高系统的性能和安全性。
2023-09-12 15:21:08
2467
转载 如何在MySQL中使用触发器?MySQL触发器详解
中创建触发器、控制触发器的执行时间、事件和流程控制、优化触发器等内容。使用触发器可以实现复杂的业务逻辑,提高数据库的性能和可靠性。使用触发器的执行条件和流程控制语句来控制执行流程,避免触发器不必要的执行。是一个常用的关系型数据库管理系统,支持触发器的使用。中,触发器可以使用流程控制语句来控制程序的执行流程,例如。中的一种特殊的存储过程,它可以在特定的表上执行一系列的。中的一种特殊的存储过程,它可以在特定的表上执行一系列的。尽量减少触发器的执行时间,避免触发器变得庞大和复杂。触发器的执行时间可以是。
2023-07-27 16:53:37
1052
转载 查看MySQL用户名的方法(查看mysql的用户名)
MySQL是一个最流行的关系型数据库,它可能是开发Web应用程序和其他网络应用程序最常使用的数据库之一。一旦用户创建在MySQL中的登录详细信息,他们就需要查看MySQL用户名以便正确凭据登录到database。通过本文,我们已经掌握了如何通过MySQL命令,MySQL管理工具和MySQL SQL语句来查看MySQL用户名的方法。一些管理工具允许用户在“MySQL Users”选项卡中查看MySQL用户名。这些MySQL管理工具,例如phpMyAdmin,HeidiSQL等,都可以查看用户名。
2023-07-26 14:13:06
32834
原创 程序员如何获得中级工程师高级工程师职称
那么第二种就是有一建或者其他一级注册类证书也可以直接评高级,这种方法相对适合大家一些,光有职称是不行的,但是光有注册证书也是不行的,不如索性的直接哪一个注册一级类的证书,拿到手就可以直接参与高级职称评审,这种方式也是最快的,但是一级注册。第一种就是博士了,博士可以直接评审,因为博士毕业的年龄都30几岁了,按照工作经验来说,是同等的,只是你是工作,他是在做学术研究。也是能评高级的,但是条件要求还是很高的,但是这个政策不是全国统一的,所以大家别较真,具体请询问当地人社局的相关政策。1、博士学位直接评审;
2023-07-19 15:17:12
1469
原创 QT的工程文件解读
如果 `qtsingleapplication-uselib` 宏未定义,或者 `qtsingleapplication-uselib` 宏定义为0,则执行 `{...}` 中的语句;`QT += module`是表示链接Qt模块库的操作,而`QT *= network`是附加一个值到QT宏中,即添加网络模块到原有的QT值中,其效果和`QT += network`相同,只是两种写法的语法略有不同。寻找更优解,在Qt中,QT宏定义作为Qt库的主要组成部分,用于头文件包含、链接库依赖和QT宏的定义等。
2023-06-12 14:56:51
989
原创 QT Qprocess封装线程执行
同时,使用信号和槽连接OutputReady信号和槽函数来实现实时输出程序的输出内容。为了避免在主线程中执行比较耗时的操作,可以使用Qt的线程模型将MyProcess这个类运行在单独的线程中。这样便实现了将MyProcess类的执行过程移动到一个单独的线程中,实现了线程的分离和异步执行,提高了程序在多核CPU上的执行效率,同时避免了在主线程中执行比较耗时的操作导致程序阻塞。我们将MyProcess类继承QObject并重载了它的`run()`函数,将程序的启动和等待的操作都放在了这个函数里面。
2023-06-08 14:17:32
830
原创 linux环境下QT使用QProcess 关闭程序
stopProcess()方法会先发送SIGTERM信号终止进程,然后等待进程完全终止。如果不调用waitForFinished(),那么可能会导致进程没有完全终止就被关闭。在Ubuntu中可以使用kill命令来终止进程。为了在Qt代码中使用kill命令,可以通过继承QProcess类来实现。这里使用了自定义的MyProcess类继承QProcess,并添加了stopProcess()方法来实现终止进程的功能。调用第三方程序,调用完后需要终止。//调用需要终止的程序。// 发送SIGTERM信号。
2023-06-08 13:39:33
5528
转载 Qt扫盲-QProcess理论总结
然后,你可以调用write()来写入进程的标准输入,并调用read()、readLine() 和 getChar() 来读取标准输出。finished()信号提供了进程的退出代码和退出状态作为参数,你还可以调用exitCode()来获得最后一个已经完成的进程的退出代码,调用exitStatus()来获得它的退出状态。如果在任何时间点发生错误,QProcess将发出erroroccurs()信号。你还可以调用error()来查找上次发生的错误类型,调用state()来查找当前进程的状态。
2023-06-08 11:20:32
942
原创 Qt 项目文件Pri详解
在Qt中,Pri文件是一种项目文件,用于将C++代码、JavaScript文件、资源文件等链接在一起,并生成可执行文件。Pri文件中可以定义编译规则、链接规则、生成规则、部署规则等等,通过使用不同的变量和函数,来实现各种复杂的构建流程和部署流程。Pri文件是基于Makefile语法的,因此需要使用一定的Makefile知识。
2023-06-03 15:22:21
9362
原创 valgrind基本功能介绍、基础使用方法说明
拷贝效果不好,请看原文。1、Valgrind概述Valgrind是一套Linux下,开放源代码(GPL V2)的仿真调试工具的集合。Valgrind由内核(core)以及基于内核的其他调试工具组成。内核类似于一个框架(framework),它模拟了一个CPU环境,并提供服务给其他工具;而其他工具则类似于插件 (plug-in),利用内核提供的服务完成各种特定的内存调试任务。
2023-06-01 17:38:48
1757
原创 《为什么精英都是清单控》读书笔记
这本书的主要内容是关于清单的重要性以及如何有效地制定和使用清单提高生产力和效率。书中指出,成功的人士往往是清单控,他们用清单来记录任务、计划和目标,使自己始终保持高效和有组织性。同时,书中还介绍了许多制定、管理和执行清单的技巧和方法,如将清单细分为小任务和大目标、合理安排任务的优先级、及时调整计划和设定可行的截止日期等等,帮助读者更好地掌握清单技能,提高自己的生产力和达成目标的能力。该书的价值在于提醒人们清单实际上是非常重要和必要的,它可以使我们更有意识地管理时间和任务,并在繁忙的生活节奏中保持焦点。
2023-05-31 14:49:31
301
原创 电子阅读器calibre的使用技巧
7. 处理文档:可以处理PDF、DOC、DOCX和其他文档格式,以及扫描的文档,并将它们转换为电子书格式。1. 添加电子书:可以单独添加文件、添加文件夹、添加zipped书籍,或者通过网络链接直接添加。2. 转换电子书格式:可以将电子书转换为不同的格式,如AZW3、EPUB、MOBI、PDF等。3. 修改元数据:可以修改电子书的元数据,例如书名、作者、出版社、简介等信息。4. 排版编辑:可以修改电子书排版,例如修改字体、修改字号、调整段落间距等。5. 标注和笔记:可以在电子书上标注、画线、添加笔记等。
2023-05-31 11:09:10
3040
2
原创 windows如何取消固定到快速访问
发现只要在鼠标放在其中一个上面,点击右键弹出的有从“从快速访问中删除”,即可去掉。偶尔发现如果点击“固定到快速访问”就会发现目录树里面就会有。如何取消固定到快速访问。
2023-04-25 14:08:07
2035
原创 在ubuntu系统,用QTestLib 做Qt单元测试,请给我一个入门的教程例子
QTest::qExec()` 函数的第一个参数是测试类的指针,指向我们的测试类的对象 `test`,第二个和第三个参数是 `main()` 函数的标准参数。`QTest::qExec()` 函数的第一个参数是测试类的指针,指向我们的测试类的对象 `test`,第二个和第三个参数是 `main()` 函数的标准参数。我们可以在测试开始前使用 `setUp()` 函数设置测试环境,在测试结束后使用 `tearDown()` 函数清除测试环境。// 运行所有测试用例。// 定义测试结束后的函数。
2023-04-19 10:37:19
1156
原创 基于 Ubuntu 系统使用 Google Test 框架编写 Qt C++ 单元测试的详细教程
然后,将测试代码目录添加到编译目标中,并链接Google Test库文件(注意:链接库文件时需要添加`-pthread`参数)。在 Qt Creator 中创建一个新的控制台应用程序项目,名称为 `MyTest`,目标文件类型选择`Relaese`, 填写好项目的相关信息和路径,创建项目后在项目根目录下创建名为 `test` 的子目录,用于存放测试代码和测试数据。在 `test` 目录下创建一个新的 C++ 文件 `mytest.cpp`,编写测试代码。# 添加 Google Test 框架库文件目录。
2023-04-19 10:26:54
871
原创 在linux系统,用QT开发环境,C++语言,做共享库工程如何做?
在完成共享库的开发后,您可以将其部署到其他应用程序中,并在需要时动态加载它。为此,您需要将生成的共享库文件放置在适当的文件夹中,并将相应的链接选项添加到应用程序的编译器选项中。注意,生成的共享库文件需要放置在指定的路径下,并在需要使用该库的程序中通过编译选项将其链接到程序中。1. 打开QT Creator,选择“新建项目”,在“非QT项目”下选择“库”;3. 在弹出的对话框中填写库的基本信息,如库的名称、版本号、作者等。2. 选择您想要创建的共享库类型,例如:动态共享库或静态共享库。
2023-04-19 10:10:07
742
转载 QT常用全局宏定义 QT定义的一些有用的宏QMessageLogger
#define qDebug QMessageLogger(QT_MESSAGELOG_FILE, QT_MESSAGELOG_LINE, QT_MESSAGELOG_FUNC).debug#define qInfo QMessageLogger(QT_MESSAGELOG_FILE, QT_MESSAGELOG_LINE, QT_MESSAGELOG_FUNC).info#define qWarning QMessageLogger(QT_MESSAGELOG_FILE, QT_MESSAGELOG_
2023-04-06 10:34:57
177
原创 使用QT的QThread封装监控文件夹文件变化的类
MyWatcherThread *watcherThread = new MyWatcherThread("监控的文件夹路径");在主界面中创建MyWatcherThread对象,并连接fileChanged信号即可获取到文件变化的信息。注意需要在pro文件中加入QT += core,否则会报错。// MyWatcherThread.cpp 文件。// MyWatcherThread.h 文件。
2023-03-24 16:32:42
763
疯狂android讲义配套光盘.7z
2019-01-30
21天学通C++(第6版)PDF和配套源代码
2017-05-19
winhttp的头文件和lib库
2017-05-12
[PhysX] PhysX 物理建模 学习教程 (英文版)Learning Physics Modeling with PhysX.pdf
2016-09-30
疯狂讲义iOS(上)光盘源码-原光盘一个不少
2014-03-31
LTE系统自动干扰抑制技术浅析
2013-09-23
Femto室内覆盖的优势分析
2013-09-23
Femto业务模式及发展策略分析
2013-09-23
《嵌入式系统windowsCE开发技巧与实例》pdg电子书和源代码.zip
2013-09-04
老“码”识途:从机器码到框架的系统观逆向修炼之路[韩宏,李林][程序源代码]
2013-08-05
VC6.0技术内幕(第五版)源代码 Programming Visual C++
2013-06-20
代码审查code review.7z
2013-04-10
UGREEN 绿联RE232usb转串口光盘备份RS232驱动3.0AndroidLinuxMacWin
2021-11-24
高通平台的模块 综测时用到的协议.zip
2021-08-12
TRACE32软件的Practice脚本 cmm脚本.zip
2021-08-11
REX搜集资料-Rex操作系统分析-及使用指南.zip
2021-08-09
VC建立excel文件并操作表格内容的例子工程
2021-08-04
ZPL II打印编程指导书卷1和2及指令小结
2018-12-20
DuiLib研究资料_入门和进阶教程_月牙儿入门文档duidesigner和源码
2018-04-10
vmdk_specs_Virtual Disk Format 1.0 1.1 5.0三个版本的vmdk格式说明文档
2017-11-07
VMware虚拟磁盘 Virtual Disk Format 1.1 虚拟磁盘格式1.1 说明书
2017-10-23
VB检测windows系统安装的程序数量名字和控制面板的卸载程序保持一致
2017-08-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人