Mam mapę z struct jako typ wartościjak dostać pasujący klucz przy użyciu wartości w mapie C++
map<int id, struct_t*> table
struct_t
{
int prev;
int wt;
string name;
}
używając tylko poprzednie, muszę znaleźć odpowiedni identyfikator. Dziękuję bardzo z góry!
EDIT:
int key=0;
for(auto it = table.begin(); it != table.end(); ++it)
{
if(table[(*it).first].prev == ?)
}
ten sposób moje dane map wygląda następująco:
id prev abundance thing
1573 -1 0 book
1864 1573 39 beds
2075 1864 41 tray
1760 2075 46 cups
dla każdego identyfikatora, muszę znaleźć następny pasujący identyfikator. Tak więc, dla 1573 z poprzedniej kolumny, muszę znaleźć pasujący "identyfikator", który jest 1864. Również std :: next nie działa, ponieważ zestaw danych może mieć pasujące identyfikatory niekoniecznie w następnym elemencie.Miej nadzieję, że to pomaga !
PROSIMY O POMOC! Mój szef jest już rozczarowany, że biorę tak dużo czasu na naukę C++
Jaki jest klucz "mapy"? – hmjd
masz na myśli typ danych? to int id – snazziii
Mapy mają być wyszukiwane na ich klucze, a nie wartości. Może powinieneś zmodyfikować swój projekt lub użyć innego rodzaju pojemnika. – arnoo