değeri kullanarak eşleştirme anahtarı almak için nasıl, ben karşılık gelen kimliği bulmalıyız. Şimdiden çok teşekkürler!Ben sadece önceki kullanma değer türüne</p> <pre><code>map<int id, struct_t*> table struct_t { int prev; int wt; string name; } </code></pre> <p>olarak bir yapı ile bir harita var bir harita C++
DÜZENLEME: my harita verileri nasıl göründüğünü
int key=0;
for(auto it = table.begin(); it != table.end(); ++it)
{
if(table[(*it).first].prev == ?)
}
budur: Her kimliği için
id prev abundance thing
1573 -1 0 book
1864 1573 39 beds
2075 1864 41 tray
1760 2075 46 cups
, ben SONRAKİ eşleştirme kimliği bulmalıyız. Yani, 1573 için prev sütunundan 1864 olan bir 'id' eşleştirmesi bulmam gerekiyor. Ayrıca, std :: next çalışmıyor çünkü veri seti, bir sonraki öğede zorunlu olarak değil, aynı zamanda eşleşen bir iğe sahip olabilir. !
LÜTFEN LÜTFEN bana yardım edin! MY patron zaten C++ öğrenmek için çok fazla zaman alıyorum olmasından hayal kırıklığına uğradığını
"Haritanın" anahtarı nedir? – hmjd
veri türünü kastediyor musunuz? int id – snazziii
Haritalar, değerlerinde değil, anahtarlarında aranmalıdır. Belki de tasarımınızı düzeltmeniz veya başka bir konteyner kullanmanız gerekir. – arnoo