Stl konténer vektor (vektor) - dinamikus tömb c

Stl konténer vektor (vektor) - dinamikus tömb c

A c ++ tömbök mellett vannak olyan tárolók is, amelyek lehetővé teszik az adatok tárolását egy kicsit másképp, és emellett különböző funkciókat is alkalmaznak (keresés, válogatás stb.). Ma megtudhatod az egyik tartályt - vektor (vektor)

Talán már ilyen problémával szembesültél, hogy a c ++ -es tömbök korlátozott méretűek, és nem tudjuk pontosan a tömbben szükséges elemek számát. Ilyen esetekben dinamikus programozás szükséges. Ie hozzárendelhet memóriát a tömb elemeihez, szükség esetén adj hozzá egy elemet. Alapvetően a ++-ben lehet manuálisan megvalósítani, de miért? ha van egy speciális osztályvektor. Lehetővé teszi számunkra, hogy változó hosszúságú tömböket hozzunk létre a helyzet függvényében.

Vektor létrehozásához kapcsolódnia kell.

Ezután egy vektor létrehozása szinte nem különbözik a változó és / vagy tömb létrehozásától:

Írj egy vektornak, írd be a vektor nevét. Push_back (amit fel kell tenned)

Az n-edik elemhez tartozó hívás nem különbözik a tömb elemére való hivatkozástól:

A vektor utolsó elemének törléséhez használja a pop_back ()

Néhány további hasznos tulajdonság:

iterátorokat
begin () - iterátor az első elemen;
end () - az iterátor az elemen az utolsó után;
rbegin () - iterátor az utolsó elemhez (inverz algoritmusokhoz);
A rend () egy iterátor az első elem előtt (az inverz algoritmusoknál).

elemek hozzárendelése
hozzárendelés (InputIterator először, InputIterator utolsó) - minden elem törlése és elemek beszúrása a tartományból [első, utolsó];
hozzárendelni (size_type, const T t) - törölje az összes elemet és tegyen be n elemeket t értékkel;
swap (x referencia, referencia y) - cserélje ki az x és y elemek értékeit (hasonló a globális függvényhez).

hozzáférés az elemekhez
a (size_type n) - az n indexhez tartozó elemhez való hozzáférés n értékű értékkel, kivételt emel;
vissza () - hozzáférés az utolsó elemhez;
front () - hozzáférés az első elemhez.

Ha nincs szükség kivételre, a túlterhelt műveletet [] használhatja az elemek eléréséhez.

elemek törlése
clear () - távolítsa el az összes elemet a vektorból;
törlés (iterátor pozíció) - eltávolítja a megadott elemet, és visszatér az iterátorhoz a következő elemhez vagy véghez ();
törlés (iterátor először, iterátor utolsó) - eltávolítja az elemeket a tartományból [első, utolsó].

vektor méret
empty () - true értéket ad vissza, ha a vektor mérete 0;
tartalék (n méret_fajta) - tartalékhely n elemek számára;
capacity () - visszaadja a vektorban tárolható elemek számát;
átméretezés (size_type sz) - újraosztja a vektor aktuális méretét;
átméretezés (size_type sz, T c) - újraosztja a vektor aktuális méretét. Ha az új méret nagyobb, mint az előző, az új elemek értéke c, egyébként a T típus alapértelmezett értéke;
size () - visszaadja az elemek számát;
max_size () - a vektor maximális mérete.

elemek beillesztése
beillesztés (iterátor pozíció, size_type n, const T x) - betölti az n elemeket az x értékkel a meghatározott pozícióban;
beillesztés (iterátor pozíció, const T x) - beilleszti az x értékkel rendelkező elemet a megadott pozícióba;
Insert (iterátor pozíció, InputIterator először, InputIterator utolsó) - betölti a tartományelemek másolatát [első, utolsó] a megadott pozícióba.

verem támogatás
pop_back () - törli az utolsó elemet;
push_back (const T x) - adj hozzá egy elemet a végéhez.

túlterhelt műveletek
[] - indexelési művelet, nem generál kivételt, ha meghaladja a tömb határait;
= - a második (v1 = v2) elemek vektor-másolatainak hozzárendelése;
== - annak meghatározása, hogy két vektor egyenlő-e (v1 == v2);
!= - annak meghatározása, hogy két vektor egyenlő-e (v1! = v2);
- több mint egy vektor, mint a másik (v1> v2);
= - a vektorhoz képest egy vektor nagyobb vagy egyenlő (v1> = v2).

vektor
A stl bool típus esetén a sablon speciális szakterülete kerül bevezetésre. Ennek eredményeképpen a tömb mérete kisebb, mint nyolcszor - elemenként 1 bit. És hozzáadott egy további módszert is:
flip () - Inert elemek.

Legújabb a fórumon

dimaCyberpunk → Játékfejlesztés: A cyberpunk krónikái
Ma van egy gomb, amely megnyomásával felszabadíthatja a játékot. Várni fogok a hetedikig, de mindent.

ganny → Ingyenes online nyerőgépek
A kaszinó nem tekinthető jövedelemnek. Ez csak egy játék. Itt vagy nyert vagy elveszett.

Barátaink

Kapcsolódó cikkek