qt中的qset的用法
时间: 2024-04-12 16:27:26 浏览: 116
在 Qt 中,QSet 是一个类似于 C++ 标准库中 std::set 的容器类,用于存储独一无二的元素,并且不保持元素的顺序。QSet 是基于哈希表实现的,因此插入、删除和查找操作的平均时间复杂度是常数级别的。
以下是 QSet 的基本用法示例:
```cpp
#include <iostream>
#include <QSet>
int main() {
QSet<int> mySet; // 创建一个空的 QSet
// 插入元素
mySet.insert(5);
mySet.insert(2);
mySet.insert(8);
mySet.insert(2); // 重复元素将被忽略
// 访问元素
for (auto it = mySet.begin(); it != mySet.end(); ++it) {
std::cout << *it << " ";
}
std::cout << std::endl;
// 删除元素
mySet.remove(5);
// 检查元素是否存在
if (mySet.contains(8)) {
std::cout << "Element 8 is present in the set." << std::endl;
} else {
std::cout << "Element 8 is not present in the set." << std::endl;
}
return 0;
}
```
输出结果:
```
2 5 8
Element 8 is present in the set.
```
在上述示例中,我们使用了 QSet<int> 定义了一个整数类型的 QSet。我们插入了一些元素,包括重复的元素,但 QSet 只保留了独一无二的元素。然后,我们遍历 QSet 并输出了元素。接着,我们删除了一个元素并检查另一个元素是否存在于 QSet 中。
阅读全文