Gebruik van de functie at() in C++ Vector

Use Function C Vector



De vector wordt in C++ gebruikt om de dynamische array te maken en de grootte van de vector kan worden gewijzigd door elementen toe te voegen of te verwijderen. De Bij() functie van de vector wordt gebruikt om toegang te krijgen tot het element van de specifieke positie die in de vector bestaat. Er wordt een uitzondering gegenereerd als de positiewaarde ongeldig is. Het gebruik van de Bij() functie in de C++-vector hebben laten zien in deze tutorial.

Syntaxis :

De syntaxis van deze functie wordt hieronder gegeven. Deze functie neemt de specifieke positie als argumentwaarde en retourneert de waarde van die positie als de positiewaarde bestaat.







vector.at(positie)



Voorbeeld-1: Lees elk element van een vector

De manier om elk element van de vector af te drukken met de functie at() is weergegeven in het volgende voorbeeld. In de code is een vector van tekenreekswaarden gedefinieerd.



De 'for'-lus is gebruikt om de vector te herhalen op basis van de vectorgrootte en om elke waarde van de vector in elke regel af te drukken met de functie at(). De functie size() is gebruikt om het totale aantal elementen van de vector te tellen.





//Bibliotheek opnemen voor invoer en uitvoer

#erbij betrekken

#erbij betrekken

namespace std; gebruiken;

inthoofd()
{
//Declareer een vector van tekenreekswaarden
vector Str= {'Welkom', 'tot', 'LinuxHint'};
// Herhaal de string met lus
voor(intl=0;l<straatmaat();l++)
{
// Druk het karakter af
kosten<<straatBij(l) << 'N';
}
kosten<< 'N';
opbrengst 0;
}

Uitgang:

De volgende uitvoer verschijnt na het uitvoeren van de bovenstaande code. Er zijn 3 elementen in de vector die in de uitvoer zijn afgedrukt.



Voorbeeld-2: Bereken de som van de vectorwaarden

De manier om de som te berekenen van alle waarden van een vector die gehele getallen bevat, is weergegeven in het volgende voorbeeld. In de code is een vector van 10 gehele getallen gedeclareerd. De eerste 'for'-lus is gebruikt om de waarden van de vector af te drukken en de tweede 'for'-lus is gebruikt om de som van alle waarden van de vector te berekenen. Vervolgens is het resultaat van de sommatie afgedrukt.

//Benodigde modules opnemen

#erbij betrekken

#erbij betrekken

namespace std; gebruiken;

inthoofd()
{
//Declareer een vector van gehele getallen
vectorint{7, 4, 9, 2, 1, 0, 8, 3, 5, 6};
// Initialiseer een integer-variabele
intsom= 0;
// Druk de waarden van de vector af
kosten<< 'De waarden van de vector:N';
voor (intl=0;l<intVector.maat();l++)
kosten<< '' <<intVector.Bij(l);
kosten<< 'N';

// Bereken de som van de vectorwaarden
voor (intl=0;l<intVector.maat();l++)
som+ =intVector.Bij(l);

// Druk de somwaarde af
kosten<< 'De som van alle vectorwaarden is:' <<som<< 'N';

opbrengst 0;
}

Uitgang:

De volgende uitvoer verschijnt na het uitvoeren van de bovenstaande code. De som van alle waarden (7 + 4 + 9 + 2 + 1 + 0 + 8 +3 +5 + 6) is 45 die in de uitvoer is afgedrukt.

Voorbeeld-3: Zoek een bepaalde waarde in de vector

De manier om een ​​bepaalde waarde in een vector te zoeken met de functie at() wordt in het volgende voorbeeld getoond. Een vector van 10 gehele getallen is gebruikt in de code zoals in het vorige voorbeeld. De waarden van de vector zijn afgedrukt met behulp van een 'for'-lus en at()-functie.

De zoekwaarde wordt overgenomen van de gebruiker. Een andere 'for'-lus is gebruikt om de invoerwaarde in de vector te zoeken en de waarde van de variabele in te stellen, gevonden zijn waar als de invoerwaarde in de vector bestaat.

//Benodigde modules opnemen

#erbij betrekken

#erbij betrekken

namespace std; gebruiken;

inthoofd()
{
//Declareer een vector van gehele getallen
vectorint{7, 4, 9, 2, 1, 0, 8, 3, 5, 6};
// Initialiseer een integer-variabele
bool gevonden= vals;
intnummer;

// Druk de waarden van de vector af
kosten<< 'De waarden van de vector:N';
voor (intl=0;l<intVector.maat();l++)
kosten<< '' <<intVector.Bij(l);
kosten<< 'N';

//Neem een ​​nummer om te zoeken
kostennummer;
//Zoek het getal in de vector met loop
voor (intl=0;l<intVector.maat();l++)
{
indien(intVector.Bij(l) ==nummer)
{
gevonden= waar;
pauze;
}
}
// Bericht afdrukken op basis van het zoekresultaat
indien(gevonden== waar)
kosten<< 'Het nummer is gevonden.N';
anders
kosten<< 'Het nummer is niet gevonden.N';
opbrengst 0;
}

Uitgang:

De volgende uitvoer verschijnt na het uitvoeren van de bovenstaande code. De waarde 2 bestaat in de vector, en het bericht, Het nummer is gevonden is gedrukt.

De waarde 11 bestaat niet in de vector en het bericht, Het nummer is niet gevonden is gedrukt.

Voorbeeld-4: Zoekwaarde gebaseerd op voorwaarden in de vector

De manier om die waarden van de vector te achterhalen die deelbaar zijn door 5 en 3, wordt getoond in het volgende voorbeeld. Vijf gehele waarden worden van de gebruiker genomen en in een lege vector ingevoegd met behulp van de functie push_back(). Na het invoegen wordt elke waarde van de vector gedeeld door 3 en 5. Als de restwaarden van beide delingen nul zijn, wordt die waarde van de vector afgedrukt.

#erbij betrekken

#erbij betrekken

#erbij betrekken

namespace std; gebruiken;
inthoofd()
{
//Declareer een lege vector
vectorint;
//Declareer een geheel getal
intnummer;
voor (intl=0;l<5;l++)
{
//Neem een ​​nummer om in te voegen
kostennummer;
//Voer het nummer in
intVector.terugduwen(nummer);
}

/ *
Print de getallen die deelbaar zijn
door 5 en 3
* /

kosten<< 'De getallen die deelbaar zijn door 5 en 3 zijn:N';
voor (intl=0;l<intVector.maat();l++) {
indien(intVector.Bij(l) % 5 ==0 &&intVector.Bij(l) %3 == 0)
kosten<<intVector.Bij(l) << '';
}
kosten<< 'N';
opbrengst 0;
}

Uitgang:

De volgende uitvoer verschijnt na het uitvoeren van de bovenstaande code voor de invoerwaarden 5, 9, 15, 8 en 45. Hier zijn 15 en 45 deelbaar door 3 en 5.

Conclusie:

Verschillende toepassingen van de at()-functie in de C++-vector zijn in deze zelfstudie beschreven aan de hand van meerdere voorbeelden. De functie at() kan ook worden gebruikt voor het gegevenstype string. Ik hoop dat de lezer deze functie in vector voor verschillende doeleinden kan gebruiken na het lezen van deze tutorial.