Matrisen brukes til å lagre flere data, og antall elementer i matrisen kan ikke endres på kjøretiden. Dette problemet kan løses ved å bruke en vektor som fungerer som en dynamisk matrise. Det finnes forskjellige funksjoner i vektorklassen for å legge til og fjerne et element fra vektoren. Slett () -funksjonen brukes til å fjerne ett eller flere elementer fra vektoren på løpetiden som reduserer størrelsen på vektoren. Bruken av denne funksjonen er forklart i denne opplæringen.
Syntaks:
To typer syntaks for denne funksjonen har gitt nedenfor.
iterator slette(iterator -posisjon);
Funksjonen ovenfor for sletting () brukes til å fjerne et enkelt element fra vektoren, og den returnerer en iterator, og den peker på elementet som blir fulgt av det siste slettede elementet.
iterator slette(iterator starter_posisjon, iterator slutter_posisjon);
Funksjonen ovenfor for sletting () brukes til å fjerne flere elementer fra vektoren basert på posisjonen nevnt i denne funksjonens første og andre argumenter.
Forutsetning:
Før du sjekker eksemplene på denne opplæringen, må du kontrollere at g ++ - kompilatoren er installert eller ikke i systemet. Hvis du bruker Visual Studio Code, må du installere de nødvendige utvidelsene for å kompilere C ++ - kildekoden for å lage den kjørbare koden. Her har Visual Studio Code -applikasjonen blitt brukt til å kompilere og utføre C ++ - koden. Ulike bruksområder for slette () -funksjonen for å sette inn element (er) i en vektor har vist nedenfor.
Eksempel 1: Fjern det første elementelementet
Lag en C ++ - fil med følgende kode for å fjerne et element fra begynnelsen av vektoren. En vektor med strengverdier har blitt brukt i koden. Verdiene til vektoren er skrevet ut før og etter sletting av det første elementet fra vektoren ved hjelp av funksjonen slette () med en parameter.
// Inkluder nødvendige biblioteker#inkludere
#inkludere
ved hjelp av navneområdetimer;
// Vis verdiene til vektoren
tomromdisplay_vektor(vektor<streng>frukt)
{
// Initialiser telleren
intdisk= 1;
// Iterer og skriv ut elementene i vektoren ved hjelp av loop
til (autohan=frukt.begynne();han!=frukt.slutt();han++)
{
// Kontroller at elementene er det siste elementet eller ikke
hvis(disk!=frukt.størrelse())
koste << *han<< ',';
ellers
koste << *han;
// Øk telleren med 1
disk++;
}
koste <<endl;
}
inthoved-(tomrom) {
// Deklarere en vektor med strengdata
vektor<streng>frukt= { 'Oransje','Banan','Mango','Jack Fruit','Lichi' };
// Skriv ut de eksisterende verdiene til vektoren
koste << 'Verdiene til vektoren før fjerning:' <<endl;
display_vektor(frukt);
// Fjern det første elementet fra vektoren
frukt.viske ut(frukt.begynne());
// Skriv ut de eksisterende verdiene til vektoren etter fjerning
koste << ' nVerdiene til vektoren etter fjerning: ' <<endl;
display_vektor(frukt);
komme tilbake 0;
}
Produksjon:
Følgende utdata vises etter at koden ovenfor er utført.
Eksempel 2: Fjern flere elementer
Lag en C ++ - fil med følgende kode for å fjerne flere elementer fra vektoren ved hjelp av funksjonen slette (). En vektor med heltallsverdier har blitt brukt i koden. To iteratorer har blitt brukt her for å angi rekkevidden av elementer som er fjernet fra vektoren. Slett () -funksjonen har blitt brukt med to parametere for å fjerne flere elementer fra vektoren.
// Inkluder nødvendige biblioteker#inkludere
#inkludere
ved hjelp av navneområdetimer;
// Vis vektoren
tomromdisplay_vektor(vektor<int>tall)
{
// Skriv ut verdiene til vektoren ved hjelp av loop
til(autohan=tall.begynne();han!=tall.slutt() ;han++)
koste << *han<< '';
// Legg til ny linje
koste << ' n';
}
inthoved-() {
// Deklarere en vektor med heltallsdata
vektor<int>intArray{ 678,435,960,231,800,387,634,267,409,294};
// Skriv ut de eksisterende verdiene til vektoren
koste << 'Verdiene til vektoren før fjerning:' <<endl;
display_vektor(intArray);
// Deklarer to iteratorer for å fjerne rekkevidden av elementer fra vektoren
vektor<int> :: iteratorstartEle, endEle;
// Sett iteratoren til den første posisjonen
startEle=intArray.begynne();
// Øk start iteratoren med 2
avansere(startEle,2);
// Sett iteratoren til siste posisjon
endEle=intArray.slutt();
// Reduser slutt iteratoren med 3
avansere(endEle,-3);
// Fjern rekkevidden av elementer
intArray.viske ut(startEle, endEle);
// Skriv ut de eksisterende verdiene til vektoren etter fjerning
koste << ' nVerdiene til vektoren etter fjerning: ' <<endl;
display_vektor(intArray);
komme tilbake 0;
}
Produksjon:
Følgende utdata vises etter at koden ovenfor er utført. I henhold til området for iteratorene er elementene fra 3. posisjon til 7. posisjon av vektoren fjernet.
Eksempel-3: Fjern de spesifikke elementene
Lag en C ++ - fil med følgende kode for å fjerne de spesifikke elementene i vektoren ved hjelp av funksjonen slette (). En vektor med 7 heltallselementer er deklarert i koden. Deretter har 'for' -løkken brukt til å iterere vektorelementene og fjerne elementene fra vektoren som ikke er delbare med 5.
// Inkluder nødvendige biblioteker#inkludere
#inkludere
ved hjelp av navneområdetimer;
inthoved-()
{
// Deklarere en vektor med heltallsdata
vektor<int>tall= { 78,Fire fem,67,25,98,75,52 };
koste << 'Verdiene til vektoren før du fjerner: n';
til (int konst &Jeg:tall) {
koste <<Jeg<< '';
}
koste <<endl;
// Fjern tallene fra vektoren, de er ikke delbare med 5
til (autohan=tall.begynne();han!=tall.slutt();han++)
{
// Kontroller at tallet er delbart med 5 eller ikke
hvis (*han% 5 != 0)
{
// Fjern elementet basert på iteratoren
tall.viske ut(han-);
}
}
koste << 'Verdiene til vektoren etter fjerning: n';
til (int konst &Jeg:tall) {
koste <<Jeg<< '';
}
koste <<endl;
komme tilbake 0;
}
Produksjon:
Følgende utdata vises etter at koden ovenfor er utført. Utgangen viser at vektoren bare inneholder delbare elementer med 5, og andre elementer er fjernet.
Konklusjon:
Ulike bruksområder for slette () -funksjonen har blitt vist i denne opplæringen for å fjerne vektorelementer. C ++ har mange andre funksjoner for å fjerne elementet fra vektoren, og disse funksjonene kan fjerne enkeltelementet om gangen. Men både enkelt- og flere elementer fra en hvilken som helst posisjon av vektoren kan fjernes ved hjelp av funksjonen vektor slette ().