自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 创建型模式之建造者模式

来实现这种变化,导致系统变得很庞大,增加了系统的理解难度和运行成本五、模式使用环境1、

2024-03-01 15:35:52 518

原创 创建型模式之原型模式

1、工作原理:将一个原型对象传给要发动创建的对象(即客户端对象),这个要发动创建的对象2、通过克隆方法所创建的对象是,它们在内存中拥有新的地址,每一个克隆对象都是的3、核心思想:是通过复制现有对象的原型来创建对象,而不是通过实例化来创建对象。

2024-02-28 16:17:02 516

原创 C++ const关键字

在C++中,const是一个关键字,用于声明常量或者修饰变量、指针、引用等,表示其数值是不可修改的。

2024-02-24 18:45:34 392

原创 C++ static关键字

一般情况下,对于,并且局部的生命周期在包含语句块执行结束时便结束了。但是如果用。但是需要注意的是,虽然用static对局部变量进行修饰之后,其生命周期以及存储空间发生了变化,。

2024-02-23 17:45:16 322

原创 QT QString和QStringLiteral的区别

1、QStringLiteral是,用于在。它的主要作用是。2、使用QStringLiteral宏可以避免在运行时创建QString对象,这对于在使用大量字符串字面值的情况下,特别是频繁创建临时QString对象时,能够提升程序的性能。

2024-02-23 10:29:21 977

原创 C++ 左值引用和右值引用

1、引用是别名2、声明时必须初始化3、通过引用修改变量4、引用的本质是指针常量三、区分左值和右值1、左值可以在等号左边,能够取地址,具名;比如变量名、返回左值引用的函数调用、前置自增/自减、赋值运算符、解引用等2、右值只能在等号右边,不能取地址,不具名;右值分为纯右值和将亡值,纯右值比如字面值、返回非引用类型的函数调用、后置自增/自减等1、将亡值是C++11引入的一种新的引用类型,用于支持移动语义的实现;2、在C++中,表达式具有值的属性,可以分为左值和右值。

2024-02-02 15:40:30 1285

原创 创建型模式之单例模式

1、单例模式:确保一个类只有,并提供一个来访问这个唯一实例2、要点:(1)某个类只有一个实例(2)必须这个实例(3)必须自行向整个系统提供这个实例,也就是。

2024-01-30 14:20:50 595

原创 创建型模式之抽象工厂模式

1、抽象工厂模式:提供一个,而无需指定它们具体的类。2、抽象工厂模式:一个工厂可,极大减少了工厂类的数量3、抽象工厂模式:是4、抽象工厂模式:中的具体工厂不只是创建一种产品,它负责创建一族产品。

2023-12-18 10:01:14 566

原创 创建型模式之工厂方法模式

而工厂子类则负责生成具体的产品对象。

2023-12-16 19:04:46 522

原创 创建型模式之简单工厂模式

(1)简单工厂模式并不是一个标准的设计模式,但是它太常用了,简单而又神奇(2)在简单工厂模式中用于创建实例的方法通常是静态方法,因此又被称为静态工厂方法模式(3)要点:如果需要什么,只需传入一个正确的参数,就可以获取所需要的对象,而无需知道其创建细节定义一个工厂类,它可以根据参数的不同返回不同类的实例,被创建者的实例通常都具有共同的父类。

2023-12-15 09:55:32 421

原创 设计模式之创建型模式

1、创建型模式关注对象的创建过程2、创建型模式对类的实例化过程进行了抽象,能够将软件模块中对象的创建和对象的使用分离,对用户隐藏了类的实例创建细节3、创建型模式描述如何将对象的创建和使用分类,让用户在使用对象时无需关心对象的创建细节,从而降低系统的耦合度,让设计方案更易于修改和扩展。

2023-12-13 10:16:37 360

原创 QT QIFW Windows下制作安装包(一)

1、QIFW。QIFW是QT Installer FrameWork的缩写,。QIFW可以帮助开发者创建自己的安装程序,将它们打包到通用的安装包中,并提供可视化的界面进行安装。2、QIFW官网文档Qt Installer Framework概述 |Qt Installer Framework手册3、QIFW下装地址。

2023-12-12 14:54:02 2601 1

原创 什么是设计模式

1、设计模式是解决某些问题的办法2、设计模式不是凭空想象出来的,是经验的总结和积累3、设计模式是不断的发展的4、各个行业都有自己的设计模式。

2023-12-12 10:12:55 608

原创 QT Windos平台下打包应用程序

它可以通过扫描应用程序的依赖项获取所需的 Qt 库文件、插件和翻译文件,以及复制应用程序可执行文件和所需的依赖项到指定目录。

2023-12-07 16:30:10 854

原创 QT QGraphicsItem 图元覆盖导致鼠标点击事件不能传递到被覆盖图元

在日常开发中,遇到这样一个问题,线图元和引脚图元重叠,导致点击引脚图元,没有进入引脚图元的鼠标点击事件中。

2023-11-30 14:31:22 1325 2

原创 C++ new / delete ,malloc / free 区别

2023-11-26 21:10:39 477 1

原创 QT QComBox实现模糊查询

它可以与诸如 QListView、QTableView、QTreeView 等控件一起使用,用于自定义项的外观和编辑行为。(2)QStyledItemDelegate 的。

2023-11-25 23:15:00 1389

原创 QT QGraphicsView框架

将QGraphicsView比作一台手机,那么QGraphicsScene相对于手机里面的app,比如是音乐播放器的话,那么QGraphicsItem就是里面的歌曲,在复杂点的话,就可以是播放器里面的一切,不单单是歌曲,如播放、暂停按钮、歌词、歌手海报啥的。

2023-11-24 11:05:28 1979 1

原创 QT QDebug和QRelease的区别

总结起来,QDebug是用于调试阶段的模式,会输出调试信息;而QRelease是用于发布阶段的模式,它会进行优化,不输出调试信息,以提高程序性能。在开发过程中,通常会先使用QDebug进行调试,确认程序的正确性,然后进行切换到QRelease进行发布。

2023-11-23 09:49:48 1123

原创 QT linux下应用程序打包

(1)在当前位置打开终端。

2023-11-22 17:07:38 949

原创 QT 事件(一)

因为,所以说我们对窗口进行操作,它多多少少都会产生对应的事件,那么说这个事件是怎么产生的?比如我们对窗口进行大小的变化,或者说鼠标拖到窗口进行移动,拿着鼠标或者键盘在窗口里进行相关的操作,比如说鼠标或者键盘这个按键被按下了、这个按键被释放了,对应的事件就产生了,当这个事件产生之后呢,窗口就需要对这个事件进行处理。因为,咱们这个鼠标或者键盘在哪一个,那么。

2023-11-19 20:41:06 206 1

原创 QT 影子构建和非影子构建的区别

Qt非常推荐使用影子构建。总的来说,Qt影子构建和非影子构建的区别只是目标文件的位置不同,但影响却非常的。正确配置构建环境可以大大降低维护成本,提高项目的灵活性和可维护形。这种方式的好处是使得项目管理更加清晰,避免污染源代码目录,并能够更加方便地进行项目构建和测试。,同时产生一些额外的问题,比如可能导致意外覆盖或者删除某些源文件等等。在影子构建中,Qt会将生成的目标文件放到一个。,这个目录通常被称为“构建目录”,Qt的影子构建和非影子构建的。相反,在非影子构建中,

2023-11-15 20:43:31 202

原创 C++ 程序编译过程

汇编程序生成的目标文件,即.o文件,并不会立即执行,因为可能出现.cpp文件中的函数引用了另一个.cpp文件中定义的符合或者调用了某个库文件中的函数。将源代码中的预处理指令(如#include、#define等)处理后生成新的代码文件,同时生成一个名为“编译指令”的文件。汇编器依赖符号表中的信息来处理变量名和函数名,并将它们转化成地址。编译器进行语法分析、语义分析等操作并且产生符号表。

2023-11-11 20:08:31 278 1

原创 QT 指定程序编译生成文件的位置

在项目构建过程中,,其中包含清单QObject类和元对象的所有信息,生成的文件一般以.moc为后缀。

2023-11-09 22:05:59 2562 1

原创 QT qmake、构建、重新构建、运行、清除的区别

以生成最终的可执行文件或库文件。

2023-11-08 21:49:12 1369 1

原创 QT 动态库编程(一)

动态库是指在程序运行时才被载入内存的库,与静态库相比,动态库可以减小程序的体积,同时也方便库的升级和维护。是 Qt 提供的宏,可以用于在编写动态库时标识需要导出的函数、类、变量等。简单来说,使用宏标识的函数、类、变量等可以被其他程序或模块使用。

2023-11-07 22:15:34 529

原创 C++ 多态

1、当一个类中包含有虚函数时,编译器会给该函数生成一个虚函数表,保存该类中虚函数的地址,通过,派生类继承基类,也会继承基类的虚函数,所以编译器也会为派生类生成一个虚函数表。1、C++的多态分为静态多态和动态多态。动态多态是指子类重写虚函数来实现的,因为是在运行期间决定函数调用的,所以称为动态多态,比如重写。C++多态的表象,在基类的函数前加上virtual关键字,在派生类重写该函数,运行时根据对象的实际类型来调用相应的函数,如果对象类型时派生类,则调用派生类的函数,如果是基类,则调用基类的函数。

2023-11-06 14:31:54 26

原创 QT 元对象系统

1、QT对标准C++进行了扩展,引入了一些新的概念,比如信号槽,对象属性等。QT的元对象编译器(Meta-Object-Compiler,MOC是一个预处理器在源程序(.cpp)编译前,先将这些QT特性转换为C++兼容的形式,然后再用C++编译器进行编译。这就是为什么在使用信号槽机制的类里,必须在头文件中添加一个Q_OBJECT宏的原因,只有添加了这个宏·,moc才对类里的信号槽进行预处理。

2023-11-05 00:10:27 187

原创 C++11 std::function

std::function是C++11中的一个模板类,它是一种可调用对象的封装器,可以将各种可调用对象(如函数、函数指针、函数对象、lambda表达式)作为参数类型,并将他们存储在对象内部,从而实现对这些可调用对象的封装和管理。

2023-11-02 15:18:04 452 1

原创 QT + VS2015 构建“无法运行rc.exe”

缺少rc.exe和 rcdll.dll库。

2023-11-01 21:56:34 619

原创 QT 信号与槽(一)

信号与槽是QT框架给我们提供的一种事件处理机制,QT框架是基于窗口的这样一个应用程序框架,基于窗口的应用程序都是基于事件的,也就意味着咱们这个信号其实对应的就是事件槽就是对应事件的处理动作,信号与槽就类似于设计模式里的观察者模式。

2023-11-01 21:01:53 156

原创 Qt qmake的时候报错 error: /utf-8: No such file or directory

【代码】【无标题】Qt qmake的时候报错 error: /utf-8: No such file or directory。

2023-11-01 14:20:04 581

原创 C++ 二进制数据序列化和反序列化

1、序列号可以将数据转换为一种格式,使其容易通过网络进行传输和存储。反序列化则可以将序列化后的数据还原为原始形式,以便后续进行处理。2、内存中对象转换为二进制数据:当需要将对象的状态传输到远程机器,或将其存储在磁盘上时,就需要将对象转换为二进制数据。3、二进制数据转换为内存中的对象:当需要从远程机器或磁盘中读取对象状态时,需要将已序列化的二进制数据转换为原始对象。三、为什么需要读数据进行序列化和反序列化处理。数据反序列化:从字节流恢复成原来的对象。二、什么是数据序列化和数据反序列化。五、数据反序列化处理。

2023-10-31 21:58:08 1042 1

QT Windos平台下打包应用程序

打包的程序

2023-12-07

QT Windos平台下打包应用程序

打包的程序

2023-12-07

空空如也

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

TA关注的人

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