C語言中文網 目錄
首頁 > STL > set容器 閱讀:2,091

C++ unordered_set查找元素(find查找元素)詳解

調用 unordered_set 的 find() 會返回一個迭代器。這個迭代器指向和參數哈希值匹配的元素,如果沒有匹配的元素,會返回這個容器的結束迭代器。例如:
std::pair<string, string> person {"John", "Smith"};
if(names.find(person) != std::end(names))
    std::cout << "We found " << person.first << " " << person.second << std::endl;
else
    std::cout << "There's no " << person.first << " " << person.second << std::endl;
這個容器是從上一節獲取的,這段代碼會報告 John Smith 是存在的。如果不存在,find() 會返回這個容器的結束迭代器,并且會執行第二條輸出語句。

unordered_set 容器中的元素是無序的,因此也不需要成員函數 upper_bound() 和 lower_bound()。成員函數 equal_range() 會返回一個以迭代器為成員的 pair,它指定了和參數匹配的一段元素。

unordered_set 容器中只可能有一個匹配元素。如果沒有,兩個迭代器都是容器的結束迭代器。調用成員函數 count() 會返回容器中參數的出現次數。對于 unordered_set 只可能是 0 或 1。當想要知道容器中總共有多少元素時,可以調用成員函數 size()。如果容器中沒有元素,成員函數 empty() 會返回 true。

精美而實用的網站,提供C語言C++STLLinuxShellJavaGo語言等教程,以及socketGCCviSwing設計模式JSP等專題。

Copyright ?2011-2018 biancheng.net, 陜ICP備15000209號

底部Logo