public member type
<unordered_set>
container iterator (1) | iterator begin() noexcept;const_iterator begin() const noexcept; |
---|
bucket iterator (2) | local_iterator begin ( size_type n );const_local_iterator begin ( size_type n ) const; |
---|
Return iterator to beginning
Returns an iterator pointing to the first element in the unordered_set container (1) or in one of its buckets (2).
Notice that an unordered_set object makes no guarantees on which specific element is considered its first element. But, in any case, the range that goes from itsbeginto itsendcovers all the elements in the container (or the bucket), until invalidated.
unordered_set 中的所有迭代器都對元素具有 const 訪問許可權(即使那些型別未以const_): Elements can be inserted or removed, but not modified while in the container.
引數
- n
- 儲存桶編號。此值應小於 bucket_count。
It is an optional parameter that changes the behavior of this member function: if set, the iterator retrieved points to the first element of a bucket, otherwise it points to the first element of the container.
成員型別size_type是一種無符號整型型別。
返回值
An iterator to the first element in the container (1) or the bucket (2).
All return types (iterator, const_iterator, local_iterator和const_local_iterator) are member types. In the unordered_set class template, these are forward iterator types.
示例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
// unordered_set::begin/end example
#include <iostream>
#include <string>
#include <unordered_set>
int main ()
{
std::unordered_set<std::string> myset =
{"Mercury","Venus","Earth","Mars","Jupiter","Saturn","Uranus","Neptune"};
std::cout << "myset contains:";
for ( auto it = myset.begin(); it != myset.end(); ++it )
std::cout << " " << *it;
std::cout << std::endl;
std::cout << "myset's buckets contain:\n";
for ( unsigned i = 0; i < myset.bucket_count(); ++i) {
std::cout << "bucket #" << i << " contains:";
for ( auto local_it = myset.begin(i); local_it!= myset.end(i); ++local_it )
std::cout << " " << *local_it;
std::cout << std::endl;
}
return 0;
}
|
可能的輸出
myset contains: Venus Jupiter Neptune Mercury Earth Uranus Saturn Mars
myset's buckets contain:
bucket #0 contains:
bucket #1 contains: Venus
bucket #2 contains: Jupiter
bucket #3 contains:
bucket #4 contains: Neptune Mercury
bucket #5 contains:
bucket #6 contains: Earth
bucket #7 contains: Uranus Saturn
bucket #8 contains: Mars
bucket #9 contains:
bucket #10 contains:
|