C++/Vector: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
Lethern (dyskusja | edycje)
→‎Metody: rozdzielenie tabelki, uzup.
Lethern (dyskusja | edycje)
Linia 75:
| void assign(size_t n, const T obj)
| czyści wektor i wypełnia go ''n'' kopiami argumentu ''obj''
| liniowa (jak ''clear'') + liniowa względem wstawianych elementów
| liniowa
|----
| void assign(iterator poczatek, iterator koniec)
| czyści wektor i wypełnia go elementami z innego wektora z przedziału <poczatek;koniec>
| liniowajw.
|----
| iterator insert(iterator pos, T obj)
| wstawia element obj '''przed''' wskazywaną przez iterator ''pos'' pozycją i zwraca iterator do dostawionego elementu
| liniowa (przenoszenie części elementów między ''pos'' a ostatnim elementem tablicy)
|----
| void insert(iterator pos, size_t n, const T obj)
| wstawia ''n'' kopii argumentu obj '''przed''' pozycją wskazywaną przez iterator ''pos''
| jw. + liniowa względem ilości dodanych elementów
| jw.
|----
| void insert(iterator pos, iterator poczatek, iterator koniec)
Linia 95:
| iterator erase(iterator pos)
| usuwa element wskazywany przez pos i zwraca iterator do następnego elementu
| liniowastała (destruktorydestruktor)
|----
| iterator erase(iterator poczatek, iterator koniec)
| usuwa elementy z przedziału <poczatek;koniec> i zwraca iterator do elementu za nimi
| jwliniowa względem ilości usuwanych elementów + przenoszenie elementów za ''końcem''
|}
<nowiki>*</nowiki> może występować kopiowanie wektora, gdy rozmiar jest zbyt mały<br />
<nowiki>**</nowiki> w rzadkim przypadku (dla iteratorów najniższego typu w hierarchi: Input, lub Output) złożoność bliższa kwadratowej (ilość wstawianych elementów razy ilość elementów od pozycji do końca tablicy)
 
=== Dostęp ===