«stdmap» etiketlenmiş sorular


17
Tüm anahtarları (veya değerleri) bir std :: haritasından nasıl alıp bir vektöre nasıl koyabilirim?
Bu, çıkmamın olası yollarından biri: struct RetrieveKey { template <typename T> typename T::first_type operator()(T keyValuePair) const { return keyValuePair.first; } }; map<int, int> m; vector<int> keys; // Retrieve all keys transform(m.begin(), m.end(), back_inserter(keys), RetrieveKey()); // Dump all keys copy(keys.begin(), keys.end(), ostream_iterator<int>(cout, "\n")); Tabii ki, başka bir işlev RetrieveValues tanımlayarak tüm …
246 c++  dictionary  stl  stdmap 

12
STL haritalarında map :: insert kullanmak [] 'den daha mı iyidir?
Bir süre önce, bir meslektaşımla STL haritalarına nasıl değer ekleyeceğimi tartıştım . map[key] = value; Doğal hissettiği ve okuması açık olduğu için tercih ettim , map.insert(std::make_pair(key, value)) Sadece sordum ve ikimiz de eklemenin neden daha iyi olduğunu hatırlayamıyoruz, ama eminim sadece bir stil tercihi değil, verimlilik gibi teknik bir neden …
201 c++  stl  map  stdmap 

9
Bir haritaya eklemenin tercih edilen / deyimsel yolu nedir?
Öğeleri bir içine eklemenin dört farklı yolunu belirledim std::map: std::map<int, int> function; function[0] = 42; function.insert(std::map<int, int>::value_type(0, 42)); function.insert(std::pair<int, int>(0, 42)); function.insert(std::make_pair(0, 42)); Bunlardan hangisi tercih edilen / deyimsel yoldur? (Ve düşünmediğim başka bir yol var mı?)
113 c++  stl  insert  stdmap  std-pair 

8
std :: harita ekleme veya std :: harita bulma?
Mevcut girişleri korumak istediğiniz bir harita varsayarsak. Zamanın% 20'si, eklediğiniz giriş yeni verilerdir. Std :: map :: find sonra std :: map :: insert yapmanın o dönen yineleyiciyi kullanarak bir avantajı var mı? Yoksa eklemeyi denemek ve ardından yineleyicinin kaydın eklenip eklenmediğini gösterip göstermediğine bağlı olarak hareket etmek daha mı …
93 c++  optimization  stl  stdmap 

6
Find metodunu kullandıktan sonra std :: map nasıl güncellenir?
Yöntemi std::mapkullandıktan sonra bir anahtarın değeri nasıl güncellenir find? Bunun gibi bir harita ve yineleyici bildirimim var: map <char, int> m1; map <char, int>::iterator m1_it; typedef pair <char, int> count_pair; Bir karakterin oluşum sayısını saklamak için haritayı kullanıyorum. Visual C ++ 2010 kullanıyorum.
92 c++  map  stl  stdmap 

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.