- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
QPair 很好,但如果我需要 3 个项目怎么办?我应该只创建一个结构,还是 Qt 已经涵盖了我?
最佳答案
作为QTBUG-22441表明,开发人员无意添加 std::tuple
的 Qt 模拟。 (尽管 QTBUG-3283 给了我们它可以完成的希望,它的日期是 2009 年 12 月,而带有 WONTFIX 的较新报告的日期是 2015 年 5 月)。因此,您需要退回到 std::tuple
或提出您自己的数据结构。
引自马克穆茨:
A hypothetical QTuple wouldn't do anything differently, anyway, except drain Qt developer resources.
此外,the docs for Qt 5 Algorithms module明确说明以下内容:
Historically, Qt used to provide functions which were direct equivalents of many STL algorithmic functions. Starting with Qt 5.0, you are instead encouraged to use directly the implementations available in the STL; most of the Qt ones have been deprecated (although they are still available to keep the old code compiling).
因此,官方鼓励在使用 Qt 5 进行编程时使用 STL,如果有必要的话。
关于c++ - 是否有 QPair 类,但用于三个以上的项目而不是两个?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35525588/
我有以下问题:我想通过 TCP 传输数据,并为此编写了一个函数。为了获得最大的可重用性,函数模板是 f(QPair data) .第一个值(又名 QString )被接收器用作目标地址,第二个包含数据
QPair 很好,但如果我需要 3 个项目怎么办?我应该只创建一个结构,还是 Qt 已经涵盖了我? 最佳答案 作为QTBUG-22441表明,开发人员无意添加 std::tuple 的 Qt 模拟。
我想制作一个数据结构来通过两种方式访问字符串: 通过ID访问 按名称访问 我的第一个想法是为每种方法使用两个映射,但这会导致数据重复: QMap accessById; QMap accessBy
我想存储一个 QPair 和 QString,或者换句话说,我想为每个索引存储三个值(int、int、String)。为此,我选择了一个 QMap,结果还不错,其中 QString 作为键,QPair
为了避免大量不必要的复制,我试图将 unique_ptr 存储在一对列表中。我正在使用一个简单的类 Test,它带有一个 QString; 我正在使用 VS2013 和 Qt5.4 using std
警告: qvector.h(509): warning C4127: conditional expression is constant (main.cpp) qvector.h(506) : wh
我有一个整数对列表,我想使用 Qt Framework 以持久的方式存储它们。 我想到了使用 QList>作为列表的类型,并使用 QSettings 将它们存储在 .ini 文件中. 不幸的是,函数Q
是否可以写和初始化 QMap> 在 Qt 5.10 中? 例如我想这样做 QMap> ee{"MAC", 0,0,}; // string, section 0, line 0 当我提供 Mac 时
我是一名优秀的程序员,十分优秀!