Liste slette ()
Det er en innebygd funksjon i C ++, og den er erklært i bibliotekdelen som en overskriftsfil; Ved hjelp av denne funksjonen fjerner vi elementer fra listen. Det kan være et enkelt element eller kanskje en rekke varer. Når vi fjerner et hvilket som helst element, reduseres størrelsen på den dynamisk opprettede listen i henhold til de tilstedeværende elementene.
Syntaks
# Iterator ListName.Sletting (iteratorposisjon)
# Iterator ListName.Sletting (iterator først, iterator sist)
Parametere
Eksempel 1: Slette et enkelt element
Dette eksemplet inneholder en enkel kildekode for å fjerne et enkelt element fra listen. Vi vet at vi kan fjerne elementet på listen fra hvor som helst, slik at vi vil legge til elementer fra baksiden og slette gjenstandene fra fronten. Så først vil listen opprettes ved å bruke en heltalldatatype. Så bruker vi Push_back -funksjonen for å legge inn verdier ved hjelp av listeobjektet.
Liste.push_back (10);
Vi tar utskrift av alle elementene på listen før vi eliminerer et element fra listen. For dette formålet brukes en for loop. Løkken vil bruke BEGIN () -funksjonen for å starte og deretter iterere til slutten.
Etter det er det nå på tide å lage en iterator som vil peke mot den første posisjonen på listen for å hjelpe oss med å fjerne det første elementet. Når iteratoren peker mot den første posisjonen, fjerner vi det første elementet fra listen ved å bruke en sletting () -funksjon.
Liste.Slett (ITR)
Dette vil ta iteratorobjektet å peke mot varen som skal fjernes. Etter sletting av et element, vil vi igjen ta utskriften ved å bruke den samme metodikken som beskrevet ovenfor i eksemplet.
Lagre kildekodefilen med utvidelsen av 'C', og kompilerer deretter koden for å utføre den i Ubuntu -terminalen. Vi har brukt en G ++ -kompilator for å kompilere C ++ -koden.
$ g ++ -o filfil.c
$ ./fil
De resulterende verdiene viser verdiene som er til stede i listen initialering på opprettelsestidspunktet. Men når et enkelt element fra fronten fjernes, vises alle elementene igjen.
Slette et bestemt utvalg av elementer
Når vi har fjernet det første elementet, vil vi slette en rekke elementer fra listen. For å utføre denne oppgaven, vil vi bruke den samme tilnærmingen; Listen vil bli opprettet, og verdier vil bli lagt inn i listen. Og så, før fjerning av data fra listen, vises alle elementene en gang før du sletter gjenstanden for elementer.
To iteratorer brukes. Den første vil peke mot det første elementet, og den andre iteratoren vil identifisere den andre eller andre elementer på listen.
Etter opprettelse nå vil den andre iteratoren bli økt med tre posisjoner. For denne operasjonen har vi brukt en forhåndsfunksjon.
Advance (ITR2, 3);
Funksjonen Advance () vil øke posisjonen til den andre iteratoren. Og ved å gjøre dette, vil det opprettes en rekke varer. For eksempel, her, vil den andre iteratoren hoppe 3 elementer, så fra 0 til 3 indekser vil alle verdiene bli slettet. Etter sletting vises nå resten av varene.
Eksempel 2
Dette eksemplet vil bruke slettefunksjonen og bare fjerne disse elementene fra listemultiplene på nummer 3. Alle de elementene som ikke er flere av 3, vil forbli på listen. Først vil vi bruke listebiblioteket i programmet for å bruke alle funksjonene til listen i programmet.
#inkludere
I hovedprogrammet oppretter først en liste og initialiser deretter tilfeldige 10 tall til listen. Alle elementene er av heltalldatatype. For å iterere i listen mellom elementene, vil vi opprette en iterator, og denne iteratoren vil bruke BEGIN () -funksjonen til å starte fra forsiden av listen. Her vil vi bruke en stundsløyfe for å gi logikken til loop iterasjon. Inntil iteratoren itererer til slutten av listen, fortsetter du å fjerne elementer mens du itererer de elementene som er delbare med 3.
Ellers, i den andre delen, itererer iteratoren uten fjerning når antallet ikke er delbart med tre. Det gjenværende innholdet vises ved å bruke en for-hver-sløyfe med BEGIN () og END () -funksjonene.
Nå kan du sammenligne de resulterende verdiene med de som først er lagt inn i hovedprogrammet. Bare disse tallene er etterlatt som ikke kan deles med 3.
Eksempel 3
I dette eksemplet vil vi bruke slettefunksjonen ved hjelp av iteratornumre. Antall ganger iteratoren itererer i listen vil slette det aktuelle nummeret fra listen. Bruk de aktuelle bibliotekene. Først bruker vi en funksjon som skal skrive ut alle elementene på listen og deretter skrive ut 'null' på slutten av listeelementene. A for loop vil iterere ved hjelp av en iterator ved hjelp av Begin () og End () -funksjoner.
Inne i hovedprogrammet opprettes en ny liste; Det initialiseres av tallene som starter fra 1 og varer til 5. Alle elementene legges inn fra baksiden av listen. Da vil vi ringe funksjonen for å vise alle elementene på listen før fjerning.
Lag nå en iterator og øk den 3 ganger. Å gjøre dette vil hoppe til det fjerde varen, ettersom det allerede er til stede på det første elementet. Bruk deretter slettingsfunksjonen (). Ved å gjøre dette blir den fjerde varen fjernet. Nå igjen, ring funksjonen for å ta resultatet. Du vil se på utførelse at den fjerde varen ikke er til stede.
Nå igjen, lag to iteratorer. Øk den andre iteratoren, og den vil hoppe til 3. plassering. Slettfunksjonen denne gangen tar ITR1 og ITR2 begge i parameteren.
Slik at begge de opprinnelige tallene kan fjernes; Etter det, skriv ut de gjenværende elementene på listen.
Nå kan du se de resulterende verdiene fra terminalen.
Konklusjon
'Sletteliste C ++' inneholder beskrivelsen om bruken av å slette () i listen på C ++ programmeringsspråk. Denne slettingsfunksjonen fjerner enten et enkelt element eller en haug med elementer som beskriver området, inkludert start- og sluttpunktet. Vi har lagt til 4 eksempler som demonstrerer arbeidet med å slette funksjoner i detalj.