o Yineleyicilerin yardımıyla QMap aracılığıyla sequently yürümek doğru mümkün mü ve bu tür eylemler yapıyor: bazı öğeleri kaldırarak ve yenilerini ekleyerek? Örneğino öğeleri ekleyerek yineleyiciler ve silme/ile QMap yürümeye doğru mu?
:
görünüyorfor(QMap<key_t,val_t>::iterator it = map.begin();
it != map.end();
++it)
{
if(it->value == something)
{
map.erase(it);
map.insert(it->key+10,it->value);
}
}
, hiçbir şeyin yanlış yapılacaktır, emin olmak için soruyorum. (Bunu kontrol etmek için yeterli zamanım yok).
UPDQMap::unite()
ile çözmek Will: cevaplar için
for(QMap<key_t,val_t>::iterator it = map.begin();
it != map.end();
++it)
{
if(it->value == something)
{
tmp_map.insert(it->key+10,it->value);
map.erase(it);
}
}
map.unite(tmp_map);
Teşekkür!
Yararlı yanıtlar için teşekkür ederiz! Ben QMap kalemi değeri isteyen ile manipüle gerekir çünkü son cümlede senin tavsiye kullanamazsınız. Silme ve ekleme değeri değiştikten sonra, aynı öğelerle sonsuz olarak çalışabilirim. Geçici bir koleksiyon kullanma tavsiyenizi ve QMap :: unite() ile sorunu çözdüm. Çok sağol! – ASten