QString与QByteArray的区别与用途
通义千问的回答: QByteArray 和 QString 都是 Qt 框架中用于处理文本和二进制数据的类,但它们的设计目的和服务的场景有所不同。 QByteArray 类型:QByteArray 用来存储原始字节(raw bytes),可以包含任意二进制数据。 编码:它不假定任何特定的字符编码。你可以使用它来处理任何类型的二进制数据,包括图像、音频文件或网络协议中的数据包等。 性能:由于直接操作内存中的字节,对于需要高效处理的数据,QByteArray 提供了较高的性能。 API:提供了许多与 C 字符串兼容的方法,比如 data() 返回一个指向内部数组的指针,使得它可以方便地与其他C API进行交互。 用途:适合于网络编程、文件I/O、图像处理等需要处理非文本数据的情况。 QString 类型:QString 是专门设计来处理文本字符串的类。 编码:默认情况下,QString 使用 UTF-16 编码(在某些平台上可能使用 UTF-8)来存储文本,这意味着它可以有效地处理 Unicode 文本,支持多种语言和特殊符号。 功能:提供了丰富的字符串操作方法,如搜索、替换 ...
Typora+PicGo图床+阿里云OSS配置
首先购买阿里云OSS服务 完成之后,打开RAM访问控制 点击 用户-创建用户 创建用户登录名称和显示名称 完成进入相关用户 点击“创建AccseeKey” 将信息保存下来 之后点击 权限管理-新增授权 选择 整个云账号-授权主体 在“系统策略”里选择以下内容 点击确认,完成 打开Typora 打开设置,选择”插入图片时……” 按照一下进行勾选 在“上传服务设定”中选择PicGo,如果没有安装则进行下载,并在Typora中配置好路径 打开PicGo 按照如下进行配置,前两项是在阿里云创建的AccessKey给出的信息 三四项根据阿里云OSS存储中自己设定好的的Bucket和存储区域来,或者直接按实例进行填写 存储路径按照阿里云OSS中填写 回到Typora刚才的页面,点击“验证图片上传选项” 返回结果为成功则说明配置完成
Hexo自动化提交-gulp压缩静态资源
1234hexo cleanhexo generategulp #进行css压缩hexo deploy 或 hexo server 关于gulpgulp可以对于网站静态文件进行压缩,缩小网站静态体积,加快加载速度 Hexo-gulp压缩静态资源加快加载速度 | 浴巾的贼船 (chunyujin.top) 命令精简使用了gulp时候,构建发布需要四个命令: 1234hexo cleanhexo ggulphexo deploy 自动化-很好用这四个命令,可以都写在package.json文件中。直接替换文件中对应位置的代码即可 1234"scripts": { "build": "hexo clean && hexo g && gulp", "deploy": "hexo clean && hexo g && gulp && hexo deploy"} 构建只需要执行npm ...
Hexo-gulp压缩静态资源加快加载速度
文章来源:使用gulp压缩博客静态资源 | Akilarの糖果屋 1.安装Gulp插件:在博客根目录打开终端,输入: 12npm install --global gulp-cli #全局安装gulp指令集npm install gulp --save #安装gulp插件 2.安装各个下属插件以实现对各类静态资源的压缩: 压缩HTML: 123npm install gulp-htmlclean --save-devnpm install gulp-html-minifier-terser --save-dev# 用gulp-html-minifier-terser可以压缩HTML中的ES6语法 压缩CSS: 1npm install gulp-clean-css --save-dev 压缩JS: 1npm install gulp-terser --save-dev 压缩字体包: 1npm install gulp-fontmin --save-dev 3.为Gulp创建gulpfile.js任务脚本。在博客根目录下新建gulpfile.js并打开,输入 ...
Windwos生成gif工具ScreenToGif
ScreenToGif - Record your screen, edit and save as a gif, video or other formats 优点:支持截动图之后进行帧的修改 教程:Windows截取gif动态图的软件 ScreenToGif 的安装、使用教程_screentogift-CSDN博客
Qt-qrc机制
Qt导入照片等资源的三种方式 绝对路径 123456789101112131415Widget::Widget(QWidget *parent) : QWidget(parent) , ui(new Ui::Widget){ ui->setupUi(this); QIcon icon("D:/document/code/QT/LEARNING/QWidget_7/143894.jpg");//直接在栈上创建,而不是在堆上 //之前推荐在堆上创建,主要是因为要确保当前空间的生命周期是足够的,要通过Qt对象树来释放对象。 //QIcon自身是一个比较小的对象,创建出来了之后,就是要设置到某个QWidget里面,QIcon对象本身是否释放,都不影响最后的显示 //另一方面,QIcon不支持对象树 this->setWindowIcon(icon); //setWindoewIcon和setWindowTitle一样,也是顶层窗口设置才有效} 相对路径 1234567 ...
Qt信号与槽
信号与槽信号源发出(某种类型的)信号,由槽接收信号,并执行对应的信号处理方式 步骤: 将槽与信号关联起来 编写好对于信号的响应行为/处理方式(槽) 触发信号,槽接收到,执行设定好的处理方式 connectQObject提供的静态的成员函数,用于将信号和槽进行关联 Qt中提供的这些类,本身是存在一定的继承关系的 原型 12345678910connect(const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type = Qt::AutoConnection)//sender:信号源,信号是由那个空间发送出来的//signal:发送的信号(信号函数);函数指针//receiver:槽,也就是信号接收对象,处理信号的对象(控件)//method:接收信号的槽函数,处理信号的对象提供的处理方式(成员函数);函数指针//type:用于指定关联方式,通常不需要手动 ...
Qt-解决MSVC下编码警告&中文输入乱码
如果MSVC编译时, 或者 在pro文件最下面加入: 1234msvc { QMAKE_CFLAGS += /utf-8 QMAKE_CXXFLAGS += /utf-8} 然后“重新构建”(一定要进行这步)即可
Windows将大写锁定键设置为中英文切换
在“设置-时间和语言-语言”选择中文语言的选项 进入后点击微软输入法的选项 进入后在“按键”中确保选择了“ctrl+空格”进行大小写切换 下载脚本工具AutoHotkey,本次教程的核心就是使用这个脚本,使CapsLock键映射为ctrl+空格,并判定长按的时间,超过一定时间就判定为按下大写锁定键,从而实现mac上一样的效果;将写好的脚本放在开机目录,开机自启动。 顾名思义,autohotkey是一款热键管理管理脚本工具 下载好之后进行安装,安装好之后就如下图,不用管,关闭就好 方法一: 新建一个记事本,命名一个比较贴近的名称 里面内容设置如下: #NoEnv的作用应该是指定使用v1版本的ahk 12345678910111213#NoEnvSetCapsLockState, AlwaysoffSetStoreCapsLockMode, OffCapsLock::KeyWait, CapsLock, T0.3If ErrorLevel { Send, {CapsLock} KeyWait, CapsLock} ...
Windows Terminal好处多多
1. Windows的新终端Windows terminal比原来的命令行工具好用很多,直接就是上位替代
C++_NULL和nullptr的区别
NULL和nullptr的区别简单来说,C++中引入了``nullptr来专门用于指针的置空,解决了C语言中NULL`的二义性问题。 也就是说,以后要给指针赋予空,用nullptr就对了 详细参考链接:C++中NULL和nullptr的区别
C-指针进阶知识
C-指针进阶知识数组指针1234int p1;int p2[5];int* p3[5];//int (*p4)[5] = p3;//数组指针 *与变量名p结合的优先程度是最弱的, * 会优先与前面的类型参数进行结合,而变量又会先与后面的方括号、括号结合,所以如果想说明变量是指针,且变量后又有其他符号跟随,就必须用括号将 *和变量括起来,变成 ( *p )的形式。 p1是int类型的变量 p2的变量类型是int [5],是一个数组,保存int类型的元素 p3的变量类型是int* [5],是一个数组,保存int*类型的元素 p4先与* 结合,p4的变量类型是int (*)[5],是一个指针。指向的是int [5]类型,即包含五个int类型元素的数组;即p4存储的是包含5个int类型元素的数组的地址。p4是数组指针 数组指针p4的值虽然和数组名p3一样,都是数组的起始地址,不过前者是”数组p3这个对象“的起始地址,后者是数组p3内首元素“的起始地址,它们的值完全相同,但是表示的范围跨度就不一样了,从现象上来看,数组指针是以一整个数组的空间为跨度,而数组首地址则是一个元素的空间为 ...
Qt代码格式化-使用astyle插件
具体配置请见下面文章天上人间 (cnblogs.com) 其他参考文章:QT 代码格式化 | 配置Beautifier - 简书 (jianshu.com)qt creator 代码格式化工具Astyle的配置_qt creater 配置astyle-CSDN博客 Qt Creator 代码格式化的高级配置_qt creator代码格式化-CSDN博客 以下是补充说明: 红色部分是astyle可执行程序的路径 蓝色部分是用户自定义的模块:点击“Add”为添加新设置,“Edit”对于当前模块进行更改 模块的设置基本框架为:Name可以自定义Value部分: 必须先使用--style=添加一个astyle的固定风格,该风格是astyle插件中预先设置好的诸多风格之一,可以在[astyle官方文档](Artistic Style (sourceforge.net))进行查看,也可以在astyle安装目录子文件夹file下查看有哪些预定风格: 需要注意的是,在自定义Value部分时,必须要先设定好这样一个风格,否则会报错如:Failed to format: The ...








