mam map jak toCzy bezpiecznie jest uzyskać obiekt w std :: map przez odniesienie?
map<int,object> objmap;
object& obj = objmap.find(num)->second;
object& obj2 = objmap[num];
Jakiekolwiek zmiany wprowadzone w obiekcie muszą być widoczne na mapie. Podobnie nie można zrobić w wektorze, ponieważ zmienia położenie obiektów, gdy chce więcej miejsca. Czy można to bezpiecznie zrobić na std :: map? i czy jest to wskazane? Druga wersja zawiera błąd, ponieważ mój obiekt nie ma pustego konstruktora. Jeśli zadeklaruję pustego konstruktora, który nic nie robi, czy dwie linie będą działały w ten sam sposób?
Czy wiesz, gdzie i jak znaleźć takie informacje w dokumentacji? Właściwie to nawet nie wiedziałem, jak szukać tej odpowiedzi: jaki jest właściwy sposób mówienia "obiekty nie poruszają się"? Domyślam się, że specyfikacja musi to precyzyjnie zdefiniować, ponieważ jest to tak ważna różnica między wektorem a mapą. – Flynsee