unordered_map::operator
Bulur veya belirtilen anahtarla bir öğe ekler.
Ty& operator[](const Key& keyval);
Ty& operator[](Key&& keyval);
Parametreler
Parametre |
Description |
Keyval |
Bul veya eklemek için anahtar değeri. |
Dönüş Değeri
Eklenen öðe veri değerinin başvuru.
Notlar
Değişken anahtar değeri bulunamazsa, varsayılan değer veri türü ile birlikte eklenir.
**operator[]**eşlemenin içine öğe eklemek için kullanılabilir m kullanarak m_anahtar =DataValue; Burada DataValue değeri mapped_type _ anahtar değeri öğesininanahtar.
Kullanırken operator[] öğeleri eklemek için verilen başvurunun sahip bir ekleme varolan bir öğeyi değiştirmek veya yeni bir tane oluşturmadan anlamına gelmez.Üye işlevler Bul ve Ekle belirtilen bir anahtara sahip öğe zaten ekleme önce var olup olmadığını belirlemek için kullanılır.
Örnek
// std_tr1__unordered_map__unordered_map_operator_sub.cpp
// compile with: /EHsc
#include <unordered_map>
#include <iostream>
#include <string>
typedef std::unordered_map<char, int> Mymap;
int main()
{
Mymap c1;
c1.insert(Mymap::value_type('a', 1));
c1.insert(Mymap::value_type('b', 2));
c1.insert(Mymap::value_type('c', 3));
// display contents " [c 3] [b 2] [a 1]"
for (Mymap::const_iterator it = c1.begin();
it != c1.end(); ++it)
std::cout << " [" << it->first << ", " << it->second << "]";
std::cout << std::endl;
// try to find and fail
std::cout << "c1['A'] == " << c1['A'] << std::endl;
// try to find and succeed
std::cout << "c1['a'] == " << c1['a'] << std::endl;
// redisplay contents
for (Mymap::const_iterator it = c1.begin();
it != c1.end(); ++it)
std::cout << " [" << it->first << ", " << it->second << "]";
std::cout << std::endl;
// insert by moving key
std::tr1::unordered_map<string, int> c2;
std::string str("abc");
std::cout << "c2[std::move(str)] == " << c2[std::move(str)] << std::endl;
std::cout << "c2["abc"] == " << c2["abc"] << std::endl;
return (0);
}
Notlar
Üye işlevi Yineleyici belirler where dönüş değeri olarak unordered_map::insert( unordered_map::value_type(keyval, Ty()).(Böyle bir öğe varsa bu öğe ile belirtilen anahtar ekler.) Daha sonra bir başvuru döndürür (*where).second.
Gereksinimler
Başlık: <unordered_map>
Namespace: std