Cześć, na Wikipedii odnośnie listy w C++ można przeczytać, że metoda size()
zwraca obecną ilość elementów listy (działa w czasie liniowym)
. Czy to prawda?! - chodzi mi o tą część w nawiasie tzn. że ta funkcja działa w czasie liniowym tzn. że lista mająca 1000 elementów zwróci informację o wielkości 100 razy wolniej niż lista mająca 10 elementów?!?
Pytam, bo z tego wynika, że lista, by zwrócić swoją wielkość musi w takim razie przejść przez wszystkie swoje elementy. Ale czy nie może być przechowywana sama ilość listy w tej klasie a przy każdym dodaniu nowego obiektu ta wartość być inkrementowana - a w przypadku użycia metody size() zwracana tylko ta zmienna, bez konieczności przechodzenia przez wszystkie elementy?!
A może Wiki się myli?!