std::unordered_set<int> s { 10, 20, 30 }; for (auto i: s) { std::cout << i << std::endl; } return 0; } 下載 運行代碼 輸出: 30 10 20 我們也可以傳遞一個比較對象 std::set,這是一個二元謂詞,採用兩個相同類型的元素並定義集合順序。如果第一個參數出現在第二個參數之前,則返回...
#include <iostream> #include <unordered_set> int main() { // 创建一个 unordered_set 并插入一些元素 std::unordered_set<int> mySet = {1, 2, 3, 4, 5}; // 使用迭代器遍历 unordered_set for (auto it = mySet.begin(); it != mySet.end(); ++it) { std::...
#include <algorithm> #include <iostream> #include <unordered_set> int main() { std::unordered_set<int> container{1, 2, 3}; auto print = [](const int& n) { std::cout << " " << n; }; std::cout << "Before clear:"; std::for_each(container.begin(), container.end(), prin...
下列代码用 size 显示std::unordered_set<int> 中的元素数: 运行此代码 #include <unordered_set> #include <iostream> int main() { std::unordered_set<int> nums {1, 3, 5, 7}; std::cout << "nums contains " << nums.size() << " elements.\n"; } 输出: nums contains 4 elements....
复杂度 与容器大小,即元素数成线性。 示例 运行此代码 #include <algorithm>#include <iostream>#include <unordered_set>intmain(){std::unordered_set<int>container{1,2,3};autoprint=[](constint&n){std::cout<<" "<<n;};std::cout<<"Before clear:";std::for_each(container.begin(), container...
int val; }; int main(int argc, char const *argv[]) { std::unordered_set<Foo> uset; uset.insert({"42",42}); uset.insert({"1024",1024}); return 0; } 二师兄:此时需要为Foo类型实现bool operator==(const Foo& o) const函数和size_t operator()(const Foo& f) const仿函数,才能通过...
#include <unordered_set> #include <iostream> int main() { std::unordered_set<int> numbers; std::cout << "Initially, numbers.empty(): " << numbers.empty() << '\n'; numbers.insert(42); numbers.insert(13317); std::cout << "After adding elements, numbers.empty(): " << numbers....
int main() { std::unordered_set<S, SHash, std::equal_to<>> s; s.insert(S{ .key = 0, .data = 1 }); s.insert(S{ .key = 1, .data = 2 }); assert(s.find(0)->data == 1); } 但是,我无法更改哈希表中的值: s.find(0)->data = 3; // Does not compile ...
下列代码用 size 显示std::unordered_set<int> 中的元素数: 运行此代码 #include <unordered_set> #include <iostream> int main() { std::unordered_set<int> nums {1, 3, 5, 7}; std::cout << "nums contains " << nums.size() << " elements.\n"; } 输出: nums contains 4 elements....
#include <unordered_set> #include <iostream> int main() { std::unordered_set<int> numbers; std::cout << "Initially, numbers.empty(): " << numbers.empty() << '\n'; numbers.insert(42); numbers.insert(13317); std::cout << "After adding elements, numbers.empty(): " << numbers....