Zeiger auf List Element
-
Abend,
ich habe eine List, in der ich Elemente hinzufuege:
std::list<Foo> list; Foo f; list.push_back(f); Foo* p = ??
Nach dem hinzufuegen mochte ich einen Zeiger auf das gerade eben hinzugefuegte Element haben. Sprich im Beispiel soll p auf das gerade geaddete Foo Objekt in der Liste zeigen. Wie macht man das?
PS: Wenn ich dann weitere Elemente der Liste mit push_back() hinzufuege, bleibt p ja valide, sprichzeigt nach wie vor auf das urspruengliche Foo Objekt in der Liste, oder?
-
Foo* p = &list.back();
Und ja, der Zeiger bleibt valide (bei
list
- bei anderen Containern nicht unbedingt).