当前位置:实例文章 » 其他实例» [文章][QT编程系列-22]:基本框架 - QT常见数据结构:QString、QList、QVector、QMap、QHash、QSet、QPair快览

[QT编程系列-22]:基本框架 - QT常见数据结构:QString、QList、QVector、QMap、QHash、QSet、QPair快览

发布人:shili8 发布时间:2025-01-13 13:29 阅读次数:0

**QT编程系列-22:基本框架 - QT常见数据结构**

在QT编程中,数据结构是非常重要的组成部分。QT提供了多种常见的数据结构,如QString、QList、QVector、QMap、QHash、QSet和QPair等。在本文中,我们将对这些数据结构进行概览,并提供一些示例代码。

###1. QStringQString是QT中的一个字符串类,用于存储和操作字符串。它支持多种方法,如连接、插入、删除等。

cpp#include <QString>
#include <iostream>

int main() {
 // 创建一个QString对象 QString str = "Hello, World!";
 // 连接两个字符串 QString str2 = str + ", QT";
 std::cout << str2.toStdString() << std::endl;
 // 插入一个字符 str.insert(7, ' ');
 std::cout << str.toStdString() << std::endl;
 return0;
}


###2. QListQList是QT中的一个列表类,用于存储和操作列表。它支持多种方法,如添加、删除等。

cpp#include <QList>
#include <iostream>

int main() {
 // 创建一个QList对象 QList<int> list;
 // 添加元素 list.append(1);
 list.append(2);
 list.append(3);
 std::cout << "列表元素:";
 for (int i =0; i < list.size(); ++i) {
 std::cout << list.at(i) << " ";
 }
 std::cout << std::endl;
 // 删除元素 list.removeAt(1);
 std::cout << "删除后列表元素:";
 for (int i =0; i < list.size(); ++i) {
 std::cout << list.at(i) << " ";
 }
 std::cout << std::endl;
 return0;
}


###3. QVectorQVector是QT中的一个向量类,用于存储和操作向量。它支持多种方法,如添加、删除等。

cpp#include <QVector>
#include <iostream>

int main() {
 // 创建一个QVector对象 QVector<int> vector;
 // 添加元素 vector.append(1);
 vector.append(2);
 vector.append(3);
 std::cout << "向量元素:";
 for (int i =0; i < vector.size(); ++i) {
 std::cout << vector.at(i) << " ";
 }
 std::cout << std::endl;
 // 删除元素 vector.removeAt(1);
 std::cout << "删除后向量元素:";
 for (int i =0; i < vector.size(); ++i) {
 std::cout << vector.at(i) << " ";
 }
 std::cout << std::endl;
 return0;
}


###4. QMapQMap是QT中的一个映射类,用于存储和操作映射。它支持多种方法,如添加、删除等。

cpp#include <QMap>
#include <iostream>

int main() {
 // 创建一个QMap对象 QMap<int, QString> map;
 // 添加元素 map.insert(1, "一");
 map.insert(2, "二");
 map.insert(3, "三");
 std::cout << "映射元素:";
 for (auto it = map.begin(); it != map.end(); ++it) {
 std::cout << it.key() << ": " << it.value().toStdString() << " ";
 }
 std::cout << std::endl;
 // 删除元素 map.remove(2);
 std::cout << "删除后映射元素:";
 for (auto it = map.begin(); it != map.end(); ++it) {
 std::cout << it.key() << ": " << it.value().toStdString() << " ";
 }
 std::cout << std::endl;
 return0;
}


###5. QHashQHash是QT中的一个散列类,用于存储和操作散列。它支持多种方法,如添加、删除等。

cpp#include <QHash>
#include <iostream>

int main() {
 // 创建一个QHash对象 QHash<int, QString> hash;
 // 添加元素 hash.insert(1, "一");
 hash.insert(2, "二");
 hash.insert(3, "三");
 std::cout << "散列元素:";
 for (auto it = hash.begin(); it != hash.end(); ++it) {
 std::cout << it.key() << ": " << it.value().toStdString() << " ";
 }
 std::cout << std::endl;
 // 删除元素 hash.remove(2);
 std::cout << "删除后散列元素:";
 for (auto it = hash.begin(); it != hash.end(); ++it) {
 std::cout << it.key() << ": " << it.value().toStdString() << " ";
 }
 std::cout << std::endl;
 return0;
}


###6. QSetQSet是QT中的一个集合类,用于存储和操作集合。它支持多种方法,如添加、删除等。

cpp#include <QSet>
#include <iostream>

int main() {
 // 创建一个QSet对象 QSet<int> set;
 // 添加元素 set.insert(1);
 set.insert(2);
 set.insert(3);
 std::cout << "集合元素:";
 for (auto it = set.begin(); it != set.end(); ++it) {
 std::cout << *it << " ";
 }
 std::cout << std::endl;
 // 删除元素 set.remove(2);
 std::cout << "删除后集合元素:";
 for (auto it = set.begin(); it != set.end(); ++it) {
 std::cout << *it << " ";
 }
 std::cout << std::endl;
 return0;
}


###7. QPairQPair是QT中的一个对类,用于存储和操作对。它支持多种方法,如添加、删除等。

cpp#include <QPair>
#include <iostream>

int main() {
 // 创建一个QPair对象 QPair<int, QString> pair;
 // 添加元素 pair.first =1;
 pair.second = "一";
 std::cout << "对元素:" << pair.first << ": " << pair.second.toStdString() << std::endl;
 return0;
}


以上就是QT中的常见数据结构的概览。这些数据结构在QT编程中非常重要,支持多种方法,如添加、删除等。

相关标签:qt开发语言
其他信息

其他资源

Top