C++ vektory sú súčasťou STL (Standard Template Library). STL je jednou z mnohých knižníc dostupných pre C++, ktoré zvyšujú efektivitu, flexibilitu a výkon aplikácií. Vektory sú veľmi užitočné a životne dôležité pre každého, kto sa chce naučiť ovládať C++.

C++ vektory sú v podstate kontajnery, ktoré môžete použiť na ukladanie údajov. Vďaka nim je práca s poliami čistá a rýchla, takže vedieť, ako používať vektory C++, je cenná zručnosť, ak hľadáte vývoj aplikácie C++. Čítajte ďalej, keď diskutujeme o všetkom, čo potrebujete vedieť o vektoroch C++.

Čo sú C++ vektory?

C++ vektory sú sekvenčné kontajnery, ktoré sú základnou súčasťou knižnice štandardných šablón. Vektory predstavujú polia, ktoré môžu v prípade potreby dynamicky meniť veľkosť počas behu.

Na rozdiel od tradičných polí nemusíte explicitne spravovať alokáciu pamäte vektora. Kontajner vektora automaticky spravuje jeho pamäť. C++ vektory si môžete predstaviť ako dynamické pole, ktoré sa po pridaní alebo odstránení prvku samo upraví.

Okrem toho vektor usporiada svoje prvky súvisle. To znamená, že k nim môžete ľahko pristupovať pomocou ukazovateľov alebo iterátorov.

instagram viewer

Ako funguje std:: vector

Teraz, keď ste oboznámení s tým, čo sú vektory C++, musíte pochopiť, ako fungujú, skôr ako ich začnete používať vo svojom kóde.

Súvisiace: Je C++ stále relevantné v roku 2021?

Keď použijete vektor C++, vloží nové prvky na koniec v rozdielovom čase. Je to preto, že v niektorých prípadoch sa bude musieť vektor rozšíriť, aby sa prispôsobil novému prvku. Podobne, ak by ste extrahovali posledný prvok vektora, trvalo by to konštantný čas, aby vektor nemusel upravovať svoju dĺžku (veľkosť).

Na efektívne využitie vektorov využívame iterátory a vstavané funkcie. Iterátory sú ukazovatele používané spolu s vektormi C++. Zjednodušujú prechádzanie vektorovým kontajnerom. Existuje mnoho rôznych vektorových funkcií a na niektoré z dôležitých sa pozrieme v ďalšej časti.

Vektorové funkcie C++

Pozrime sa na niektoré funkcie iterátora a kontajnera STL, ktoré sa bežne používajú s vektormi C++:

  1. začať() vráti ukazovateľ iterátora, ktorý ukazuje na prvý prvok vektora.
  2. koniec() vráti ukazovateľ iterátora na koncovú pozíciu vektorového kontajnera.
  3. rbegin() je ako začať(), ale poskytuje vám spätný iterátor ukazujúci na posledný prvok vo vektore.
  4. veľkosť () vráti počet prvkov uložených vo vektore.
  5. max_size() vráti maximálnu kapacitu prvkov, ktorú môže vektorový kontajner pojať.
  6. zmeniť veľkosť (x) zmení veľkosť vektorového kontajnera tak, aby sa zmestil X prvkov.
  7. prázdne () vráti hodnotu true, ak vektorový kontajner neobsahuje žiadne prvky.
  8. push_back() vloží nový prvok do vektora na koniec.
  9. pop_back() extrahuje prvok z konca vektorového kontajnera.
  10. vložiť () umožňuje pridať prvok do vektora na určenom mieste.

Príklad vektora C++

Pomocou vektorov v C++ je kódovanie s poliami flexibilné a rýchle. Pozrime sa na vzorový kód, ktorý používa vektory C++.

#include
#include
pomocou menného priestoru std;
void main()
{
vektor arr;
// push_back na pridanie prvkov na koniec nášho kontajnera
arr.push_back (10);
arr.push_back (5);
arr.push_back (20);
// vektor teraz obsahuje [10,5,20]
// použite iterátor begin() na prechod kontajnera až po ukazovateľ end().
cout << "začiatok() a koniec() iterátory: ";
for (auto j = arr.begin(); j != arr.end(); j++)
{
cout << *j << ' ';
}
// Očakávaný výstup: 10 5 20
// rbegin() a rend() používané na spätný prechod vektorovým kontajnerom
cout << " iterátory rbegin() a rend(): ";
for (auto j = arr.rbegin(); j != arr.rend(); j++)
{
cout << *j << ' ';
}
// Očakávaný výstup: 20 5 10
cout << "Veľkosť poľa je: " << arr.size() << endl;
// Očakávaný výstup: Veľkosť poľa je: 3
// Zmeňte veľkosť poľa tak, aby obsahovalo iba 2 prvky
arr.size (2);
cout << "Veľkosť poľa je: " << arr.size() << endl;
// Očakávaný výstup: Veľkosť poľa je: 2
cout << "MaxSize(): " << arr.max_size() << endl;
cout << "Vektor je prázdny? " << arr.empty() << endl;
// pop_back posledný prvok
arr.pop_back();
// vložte 5 na začiatok poľa
arr.insert (arr.begin(), 5);
}

Súvisiace: Ako sa naučiť programovať v C++

Používanie vektorov v C++

C++ vektory sú flexibilné a výkonné, a preto sú základnou funkciou každého vývojára C++. STL je významná knižnica C++ a jej podrobné preskúmanie vám môže pomôcť vytvoriť lepšie aplikácie.

Príručka pre začiatočníkov k štandardnej knižnici šablón v C++

Chcete lepšie porozumieť C++ pomocou knižnice štandardných šablón? Kliknite na knihy tu.

Prečítajte si ďalej

zdieľamTweetujteEmail
Súvisiace témy
  • Programovanie
  • Programovanie
  • Objektovo orientované programovanie
O autorovi
M. Fahad Khawaja (76 publikovaných článkov)

Fahad je spisovateľ v MakeUseOf av súčasnosti sa špecializuje na informatiku. Ako zanietený technický spisovateľ dbá na to, aby bol neustále informovaný o najnovších technológiách. Zaujíma ho najmä futbal a technológie.

Viac od M. Fahad Khawaja

prihlásiť sa ku odberu noviniek

Pripojte sa k nášmu bulletinu a získajte technické tipy, recenzie, bezplatné e-knihy a exkluzívne ponuky!

Kliknutím sem sa prihlásite na odber