Wczytywanie danych z pliku, biblioteka STL

0

**Obrazek w załączniku. **
Posiadam plik csv o formacie: Identyfikator|Płeć|Identyfikator_Ojca|Identyfikator_Matki, z którego muszę wczytywać dane.

W każdym obiekcie (oprócz tych u samej góry) posiadam zmienne: id_ojca, id_matki.
Na początku wywołania programu podaję id.

Potrzebuję wpisać do jakiegoś kontenera (prawdopodobnie wpiszę do vectora) tylko te obiekty, których ten podany jest przodkiem. Np. dla pomarańczowego będą to fioletowy, zielony oraz czarne, dla niebieskiego: fioletowy oraz czarne.

Próbuję sobie to jakoś poukładać w głowie ale mi za bardzo nie wychodzi.

Zwykle robiłem to w taki sposób ale w tym przypadku nie ma to sensu. Bo wgrałbym całą listę.
Ma ktoś pomysł jak to zrobić?


while (!plik_s.eof())
	{
		uczen.push_back(Student());
		l.clear();
		getline(plik_s, l, '|');

		if (l.empty()) break;
		uczen[i].set_identyfikator(atoi(l.c_str()));
 // itd.
		i++;
	}
0

Czy np. mógłbym zrobić vector shared pointerów, wszystkie potrzebne zostawić a reszkę zresetować, czyli usunąć obiekty.

0

Po pierwsze jak cię rozumiem, chcesz pobrać dzieci danego obiektu. Załóżmy mamy obiekt Matusz i ma on bezpośrednie dzieci marlena i marcin a one z kolei są przodkami elementów krzysztof i elżbieta?
Tylko że zakładam sobie że w obiektach potomnych nie wskazujesz na wskaźnik przodka a po prostu na jego id(u ciebie może być dwóch przodków).
To cóż kolego trzeba by załadować dane i po filtrować je sobie. Tak na szybko, wczytujesz dane, wyszukujesz najpierw dzieci pierwszego poziomu, a później kolejnych.

1 użytkowników online, w tym zalogowanych: 0, gości: 1