C++ vectoren maken deel uit van de STL (Standard Template Library). De STL is een van de vele bibliotheken die beschikbaar zijn voor C++ en die de efficiëntie, flexibiliteit en prestaties van toepassingen verbeteren. Vectoren zijn erg handig en een essentieel concept voor iedereen die bekwaam wil worden in C++.

C++-vectoren zijn in wezen containers die u kunt gebruiken om gegevens op te slaan. Ze maken het werken met arrays schoon en snel, dus weten hoe je C++-vectoren moet gebruiken, is een waardevolle vaardigheid als je een C++-toepassing wilt ontwikkelen. Lees verder terwijl we alles bespreken wat u moet weten over C++-vectoren.

Wat zijn C++-vectoren?

C++-vectoren zijn sequentiecontainers die een essentieel onderdeel vormen van de Standard Template Library. Vectoren vertegenwoordigen arrays die indien nodig tijdens runtime van grootte kunnen veranderen.

In tegenstelling tot traditionele arrays hoeft u de geheugentoewijzing van een vector niet expliciet te beheren. De container van de vector beheert automatisch zijn geheugen. U kunt C++-vectoren zien als een dynamische array die zichzelf aanpast na het toevoegen of verwijderen van een element.

Bovendien rangschikt een vector zijn elementen aaneengesloten. Dit betekent dat u ze gemakkelijk kunt openen met behulp van pointers of iterators.

Hoe std:: vector werkt

Nu u bekend bent met wat C++-vectoren zijn, moet u begrijpen hoe ze werken voordat u ze in uw code kunt gaan gebruiken.

Verwant: Is C++ nog steeds relevant in 2021?

Wanneer u een C++-vector gebruikt, voegt deze aan het einde nieuwe elementen in differentiële tijd in. Dit komt omdat, in sommige gevallen, de vector zal moeten uitbreiden om plaats te bieden aan het nieuwe element. Evenzo, als u het laatste element van een vector zou extraheren, zou het een constante tijd duren voordat de vector zijn lengte (grootte) hoeft aan te passen.

Om vectoren effectief te gebruiken, maken we gebruik van iterators en ingebouwde functies. Iterators zijn pointers die naast C++-vectoren worden gebruikt. Ze vereenvoudigen het doorkruisen van de vectorcontainer. Er zijn veel verschillende vectorfuncties en we zullen in de volgende sectie enkele van de belangrijkste bekijken.

C++ vectorfuncties

Laten we eens kijken naar enkele iterator- en STL-containerfuncties die vaak worden gebruikt met C++-vectoren:

  1. beginnen() geeft een iteratoraanwijzer terug die naar het eerste element van de vector wijst.
  2. einde() retourneert een iteratoraanwijzer naar de na-eindpositie van de vectorcontainer.
  3. begin() is als beginnen(), maar het geeft je een omgekeerde iterator die naar het laatste element in de vector wijst.
  4. maat() geeft een aantal elementen terug die in de vector zijn opgeslagen.
  5. max_grootte() retourneert de maximale capaciteit van elementen die de vectorcontainer kan accommoderen.
  6. formaat wijzigen (x) zal de grootte van de vectorcontainer wijzigen zodat deze kan bevatten x elementen.
  7. leeg() geeft true terug als de vectorcontainer geen elementen heeft.
  8. terugduwen() voegt aan het einde een nieuw element in de vector in.
  9. pop_back() haalt een element uit het einde van de vectorcontainer.
  10. invoegen() stelt u in staat om een ​​element op een gespecificeerde positie aan de vector toe te voegen.

C++ Vector Voorbeeld

Het gebruik van vectoren in C++ maakt het coderen met arrays flexibel en snel. Laten we eens kijken naar enkele voorbeeldcode die gebruikmaakt van C++-vectoren.

#erbij betrekken
#erbij betrekken
namespace std; gebruiken;
ongeldig hoofd()
{
vector arr;
// push_back om elementen toe te voegen aan het einde van onze container
arr.push_back (10);
arr.push_back (5);
arr.push_back (20);
// vector bevat nu [10,5,20]
// gebruik begin() iterator om de container te doorkruisen tot end() pointer
cout << "begin() en end() iterators: ";
voor (auto j = arr.begin(); j != arr.end(); j++)
{
cout << *j << ' ';
}
// Verwachte output: 10 5 20
// rbegin() en rend() gebruikt om de traverse vectorcontainer om te keren
cout << "rbegin() en rend() iterators: ";
voor (auto j = arr.rbegin(); j != arr.rend(); j++)
{
cout << *j << ' ';
}
// Verwachte output: 20 5 10
cout << "De grootte van de array is: " << arr.size() << endl;
// Verwachte output: de grootte van de array is: 3
// Formaat van array wijzigen om slechts 2 elementen te hebben
arr.formaat wijzigen (2);
cout << "De grootte van de array is: " << arr.size() << endl;
// Verwachte output: de grootte van de array is: 2
cout << "MaxSize(): " << arr.max_size() << endl;
cout << "Vector leeg? " << arr.empty() << endl;
// pop_back laatste element
arr.pop_back();
// voeg 5 in aan het begin van de array
arr.insert (arr.begin(), 5);
}

Verwant: C++ programmeren leren

Vectoren gebruiken in C++

C++-vectoren zijn flexibel en krachtig, daarom zijn ze een essentiële functie voor elke C++-ontwikkelaar die er is. De STL is een belangrijke C++-bibliotheek en als u deze in detail onderzoekt, kunt u betere toepassingen maken.

Een beginnershandleiding voor de standaardsjabloonbibliotheek in C++

Wilt u C++ beter begrijpen met de standaardsjabloonbibliotheek? Sla de boeken hier.

Lees volgende

DeelTweetenE-mail
Gerelateerde onderwerpen
  • Programmeren
  • Programmeren
  • Object georiënteerd programmeren
Over de auteur
M. Fahad Khawaja (76 artikelen gepubliceerd)

Fahad is een schrijver bij MakeUseOf en studeert momenteel informatica. Als een fervent tech-schrijver zorgt hij ervoor dat hij op de hoogte blijft van de nieuwste technologie. Hij is vooral geïnteresseerd in voetbal en technologie.

Meer van M Fahad Khawaja

Abonneer op onze nieuwsbrief

Word lid van onze nieuwsbrief voor technische tips, recensies, gratis e-boeken en exclusieve deals!

Klik hier om je te abonneren