- 博客(14)
- 收藏
- 关注
原创 QT设计模式:观察者模式
观察者模式(Observer Pattern)是一种行为设计模式,它定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象,当主题对象状态发生变化时,会通知所有的观察者对象,使它们能够自动更新自己的状态。
2024-04-27 17:12:21 150
原创 QT设计模式:组合模式(QObject对象树)
组合模式是一种设计模式,是将对象组合成树形结构以表示"部分-整体"的层次结构。以便于使用简单的部分来创建复杂的对象。
2024-04-27 14:51:49 196
原创 QT:指针容器的使用
QList基类指针可以包含派生对象的地址。这样, 基类指针的容器就能够包含任何派生对象的地址。进而,多态使得在运行时能够通过这些指针调用合适的函数。
2024-04-27 11:07:43 21
原创 为什么在C++中应该避免使用数组?
程序员有责任确保在所有可能的情况下当数组销毁时都要正确地释放内存。编译器和运行时系统都不会检查数组下标是否位于正确的范围之内。预分配或追加元素都是费时的操作(在运行时和开发时都是如此)。数组的大小可以是固定不变的,或者必须使用堆中的动态内存。在C语言这样的编程语言中,最基本的方法就是使用数组。使用数组的程序员有责任编写额外的范围检查代码。在 C++ 中,使用如 std::vector。只要有可能,就应当使用列表而不是数组。在 Qt 中,使用 如 QList。等,来代替原始数组。等,来代替原始数组。
2024-04-27 10:18:30 20
原创 QT中使用字符串的三种方式
的接口,或者极少的其他情况。它经常是应当避免的运行时错误的来源。中的字符串类型,因为它有丰富的。任何地方都可以使用这种类型。风格的字符串,主要用于与C语。
2024-04-27 09:14:24 15
原创 C++ QT设计模式:库与设计模式
库(lib)是一个文件,它包含一个或者多个编译后文件(称为目标文件),并对其进行了索引,以便连接器能更容易地找到符号以及它们的定义。
2024-04-25 17:05:27 140 1
原创 QByteArray 和 QString 的相互转换总结
QByteArray:用于处理字节数组,即二进制数据,常用于网络和串口协议。QString:用于处理Unicode字符串,常用于文本文件。
2024-02-02 10:43:07 877
原创 QT怎么让模型数据在视图中用自定义组件显示?(通过重写委托中的paint函数)
在QT使用模型视图时,模型中的数据一般会以文字的形式展现,但是如果我想以其他的形式显示,应该用什么方法呢?
2024-01-18 17:28:30 413 3
原创 QT在触摸屏上如何实现按键长按功能?
要使用按钮的长按功能,想当然的会想到使用pressed和released信号,在按钮按下和释放的时候发出一个信号。但是我在surface的win10上使用时,长按时按钮似乎不能被按下,只有在点按时可以按下,但是这样pressed和released信号都会马上被触发,起不到长按的效果。
2024-01-02 18:42:32 875 1
原创 QT怎么开发插件?(附官方实例解析)
QT中的插件开发分为两种:1、扩展QT本身的插件2、扩展QT应用程序的插件,本文描述的插件为后者。打开QT的官方插件例子Echo Plugin Example,可以看到项目中有两个子项目:其中plugin是例子中的插件,echopluginwindow是调用插件的程序。
2023-12-28 20:04:07 529
原创 QT中为什么负数会大于正数?(记一次有符号整数和无符号整数之间的比较发生的错误)
后面查了半天,发现一个定义为INT64,一个是UINT64,在和无符号整数进行比较时,有符号整数会进行隐式转换变成无符号整数,-20将被转换为18446744073709551596,表达式自然就成立了。-20的值居然可以大于32768。
2023-12-27 15:55:14 363
原创 QT中如何转化和解析时间戳
在网上搜索时,发现绝大多数答案都使用了toTime_t()和fromTime_t()这两个函数,但是qt官方已经把这两个函数定义为过时的。如果是毫秒级时间戳则是fromMSecsSinceEpoch()和toMSecsSinceEpoch()。现在建议使用的函数应该是fromSecsSinceEpoch()和toSecsSinceEpoch()。
2023-08-28 11:39:16 1126 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人