C ++ køfunksjoner

C ++ køfunksjoner
I C ++ følger købeholderne First In First Out (FIFO) -metoden. I en FIFO -strategi legges data inn fra den ene siden av en kø og blir trukket ut fra motsatt side av køen. C ++ std :: køklasse tilbyr alle kørelaterte funksjoner.

Det er to elementer i køfunksjoner: “Front” som refererer til komponenten i første eller frontmeste posisjon og “bak” som refererer til komponenten på siste sted. I typiske køer blir ting lagt mot ryggen og fjernes mot fronten.

Syntaks

La oss begynne med syntaksen til køfunksjonen i C++.

For å lage en kø, må vi først legge til “#Include” I overskriftsfilen.

  • Kønavn: Køens brukerdefinerte navn.
  • Køstype: Datatypene til hvert køelement.

Arbeidsstrømning av kø i C++

Ovennevnte syntaks kan brukes til å erklære køer i C++. For eksempel etablerer "Queuenumber" en kø med bare heltallmedlemmer under navnnummeret. Den spesifiserte køen vil fungere i henhold til FIFO (First In First Out) -prinsippet. C ++ std :: køklasse har også mange nyttige innebygde medlemsfunksjoner som kan brukes med kø.

I henhold til illustrasjonen nedenfor, hvis elementer legges til i køen i følgende rekkefølge: 10-> 20-> 30-> 40-> 50, vil de bli fjernet fra køen i følgende rekkefølge: 10-> 20-> 30-> 40-> 50, starter med det første elementet lagt til.

Se på eksemplet C ++ kode gitt nedenfor for å se hvordan en kø fungerer.

I det ovennevnte eksemplet oppretter vi køen. Først åpner du enhver C ++ -kompilator for å kjøre programmet ditt. Vi inkluderte opprinnelig toppfilen #include for å bygge en kø. Ved å bruke ensartet initialisering tildelte vi heltallverdiene til køen som heter “Nummer” som er 10, 20, 30, 40 og 50. For å vise køen vår, brukte vi en enkel mens Loop bruker funksjonsfront (). Pop nummeret for å få utdataene fra programmet. Som vist nedenfor er utdataene trykt på FIFO -eiendommen.

Medlem_types i C ++ kø

Medlemstypen som spesifiserer typen underliggende beholder, som køen må tilpasse seg, er Containertype. Køens elementantall vises etter størrelsestype som et usignert heltall. Den typen elementer som opprettholdes i købeholderen er indikert av en type som kalles verdyp.

Funksjoner av C ++ kø

La oss se på noen av de mest brukte funksjonene til køer i C++.

Kø :: tom ()

Den innebygde C ++ STL (Standard Template Library) Metodekø :: tom () er erklært i overskriftsfilen. Status for en kø er definert av denne funksjonen.

Syntaks

Se på syntaks:

For å lage en kø, er tom () erklært i overskriftsfilen. Denne funksjonen krever ingen parameterverdi. Hvis køen er tom og ikke har noen elementer inne i den, er det

Funksjonens returverdi er sann. Hvis funksjonen ikke er tom, er funksjonens returverdi falsk.

Feil og unntak

Hvis parameteren sendes, indikerer den en feil; Ellers viser det ingen unntak.

Enkelt eksempel på tomt ()

I dette eksemplet er inngangsverdien til myqueue “1” i funksjonen myqueue.tømme(). Til gjengjeld vil den gi utdataene som usant fordi hvis køen ikke er tom, er funksjonens returverdi falsk.

Det ovennevnte bildet viser inkludering av noen få toppfiler i.e., iostream & kø. Etter det har vi vår viktigste funksjon av heltalldatatype. Innenfor hovedfunksjonen har vi en variabel som heter “Myqueue”. For å vise køen vår, brukte vi ganske enkelt if-else ved å bruke funksjonen tom (). Hvis køen er tom, kan du skrive ut sann; Ellers, skriv ut falsk.

Eksempel på tom () funksjon i tilfelle køen er tom

Vi bruker den tomme () teknikken for å finne ut om køen er tom. Hvis køen ikke er tom og produserer 0 (falsk); Hvis køen er tom, 1 (sant).

Kjør søknaden din i hvilken som helst C ++ -kompilator ved å åpne den som er vist i det nevnte eksemplet. Opprinnelig opprettet vi en tom kø ved å inkludere overskriftsfilen #includeQueue>. Strengnavn språk er i en kø på grunn av jevn initialisering. Derfor språk.tomt () gir sant. Etter det legger vi til flere elementer i køen. Nok en gang, bruk tom () for å bekrefte at køen er tom. Denne gangen gir det falske resultater.

Eksempel på tomt () for å finne summen mens du spretter køen

I denne illustrasjonen lager vi køen. Start med å starte en hvilken som helst C ++ -kompilator og kjøre programmet ditt. For å opprette en kø, la vi først overskriftsfilen #include. Det er en kø med heltall nummer 2, 4, 5, 6 og 8 ved å bruke ensartet initialisering.

I illustrasjonen ovenfor må vi finne summen av heltall. For det første, se om køen er tom, og hvis den ikke er det, legg til frontelementet til en variabel med en 0 startverdi ved å bruke mens sløyfen før du spretter den. Fortsett å gjøre dette til linjen er gratis. Skriv ut variabelenes endelige verdi. Den endelige verdien er skrevet ut på FIFO -eiendommen.

Kø :: størrelse ()

Den innebygde C ++ STL (Standard Template Library) Metodekø:: Størrelse () er erklært i overskriftsfilen. Størrelsen på køen og elementene kontrolleres av denne funksjonen.

Syntaks

Bildet som er festet her representerer syntaks for køen :: størrelse () -funksjonen.

Størrelse () -funksjonen brukes til å bestemme køens størrelse. Det er ikke en parameterverdi som må sendes til denne funksjonen. Størrelsestype medlemstype, en usignert heltallstype, er funksjonens Returverdi.

Feil og unntak

Hvis en parameter føres, vises en feil, og det er ingen unntakskastgaranti.

Eksempel på størrelse () for å få størrelsen på køen

Dette er et enkelt eksempel på størrelse () der vi må finne størrelsen på køen. Først oppretter vi køen, og åpner deretter enhver C ++ -kompilator for å kjøre programmet.

I eksemplet over er tre komponenter blitt lagt til i en kø med strenger som kalles språk. Størrelse () -metoden ble deretter brukt til å beregne køens elementtall. Språk.Størrelse () returnerer 3 som et resultat av køen som inneholder 3 komponenter i køen.

Eksempel på størrelse () ved å få summen av heltall

I dette eksemplet er det en kø med heltall nummer 2, 4, 5, 6 og 8. Da må vi finne summen av heltall.

For å kjøre programmet, åpne enhver C ++ -kompilator etter å ha konstruert køen. For å konstruere en kø, har vi lagt til overskriftsfilen #includeQueue>. Kontroller deretter at køstørrelsen er null. Hvis ikke, legg frontelementet til en variabel med en 0 -initialisering før du spretter frontelementet. Skriv ut variabelenes endelige verdi. Den endelige verdien er skrevet ut på FIFO -eiendommen.

Kø :: Front ()

Den innebygde C ++ STL (Standard Template Library) Metodekø :: Front () er erklært i overskriftsfilen.

Syntaks

Det vedlagte skjermbildet viser køen :: fronten () syntaks tydelig.

Headerfilen #include inneholder en erklæring for prosedyrekøen :: Front (). Det er ikke en parameterverdi som må sendes til denne funksjonen.

Feil og unntak

Det har ikke noe unntak gjennom garanti og usikker oppførsel når beholderen er tom.

Enkelt eksempel på fronten ()

Her er en enkel illustrasjon av hvordan du bruker front () for å lokalisere frontelementet i en kø. For å kjøre applikasjonen, åpne en hvilken som helst C ++ -kompilator etter å ha opprettet køen. For å konstruere en kø inkluderer vi overskriftsfilen #includeQueue>.

Ved å bruke ensartet initialisering tildelte vi heltallverdiene til køen som heter “Myqueue” som er 9, 8, 7 og 6. Bruk myqueue.foran () for å vise verdien. Så til gjengjeld vil det gi verdien 9. Som vist nedenfor er utdataene trykt på FIFO -eiendommen.

kø.tilbake()

Den innebygde C ++ STL (Standard Template Library) Metodekø :: Back () er erklært i overskriftsfilen. Den siste oppføringen i køen kan henvises eller data relatert til denne funksjonen.

Syntaks

Metodekøen :: Back () er erklært i overskriftsfilen. Det er ikke en parameterverdi som må leveres til denne funksjonen. Denne funksjonen gir en henvisning til det siste eller sist innsatte kø Container -medlemmet.

Enkelt eksempel på baksiden () -funksjonen

Dette er et enkelt eksempel på baksiden () -funksjonen. La oss sjekke det festede bildet.

For å kjøre skriptet, må du starte en C ++ -kompilator og først etablere køen. Vi inkluderte opprinnelig toppfilen #includeQueue> for å bygge en kø. Skyv verdien til køen som er 9, 8, 7 og 6. Til gjengjeld vil det være bakelementet 6 i køen.

Kø :: Push ()

Den innebygde C ++ STL (Standard Template Library) Metodekø :: Push () er erklært i overskriftsfilen. Etter at det forrige elementet ble plassert, legger denne funksjonen til et nytt element. Prosedyren for å legge til et nytt element i køen er kjent som “Enqueue -operasjon.”

Syntaks

Her er syntaksen til køen :: push -funksjonen.

Verdype er en medlemstype av et element som ble lagt til i købeholderen. Denne funksjonen returnerer ikke noe.

Enkelt eksempel på push ()

I dette eksemplet må vi skyve elementene i køen. Først oppretter vi køen. Så åpne enhver C ++ -kompilator for å kjøre programmet. Inkluderer toppfilen#inkluderer for å opprette en kø. Skyv verdien til køen.

Vi har laget en heltallkø. Vi skyver elementer i køen en etter en ved hjelp av myqueue.Push () Metode ved å bruke mens du er sløyfe og viser verdien ved hjelp av cout. Til slutt implementeres POP () for å vise køen.

Eksempel på push () ved å sette inn elementene i køen

For å legge til et element til slutten av en kø, bruker vi push () -metoden.

I det ovennevnte eksemplet er dyret en kø med strenger som vi har laget.

Vi har benyttet oss av en stundsløyfe og andre køliteknikker i stedet for bare å rapportere elementene i køen direkte. Dette er slik å fungere som en typisk kø -datastruktur, og det er grunnen til at STL -køen er en STL -containeradapter som gir begrenset tilgang. Derfor klarer vi ikke å iterere over køen som vi kan med vektorer eller andre containere.

I stedet skriver vi ut elementets front før vi kontinuerlig spretter det inne i en løkke til køen er tom.

Kø :: Pop ()

En innebygd funksjon fra C ++ Standard Template Library (STL) finnes i køoverskriftsfilen. Beholderen som holder elementet er tomt, og reduserer køens størrelse med 1.

Syntaks

Her er syntaksen til POP () -funksjonen.

Det er ikke en parameterverdi som må leveres til denne funksjonen. Denne funksjonen returnerer ikke noe.

Feil og unntak

Hvis parameteren er bestått, viser den en feil, og uten unntak. Hvis parameteren ikke kaster noen unntak, kaster du en garanti.

Enkelt eksempel på pop ()

I dette enkle eksemplet må vi poppe elementene fra køen. Først oppretter vi køen. Så åpne enhver C ++ -kompilator for å kjøre programmet. Vi inkluderte opprinnelig toppfil #include konstruere en kø. Skyv verdien til køen.

Vi har laget en heltallkø. Vi skyver elementer i køen en etter en ved hjelp av myqueue.Push () Metode.

Vi har laget pop () til å poppe elementene fra funksjonen. Vi har benyttet oss av en stundsløyfe og andre køliteknikker i stedet for bare å rapportere elementene i køen direkte. Dette er for det å fungere som en typisk kø -datastruktur, og det er grunnen til at STL -køen er en STL -containeradapter som gir begrenset tilgang.

Kø :: Swap

Denne funksjonen gjør det mulig å bytte mellom elementene i to køer. Størrelsene på de to køene ville sannsynligvis avvike fra det de opprinnelig var før innholdet ble byttet.

Syntaks

Bildet viser syntaks for bytte () -funksjonen.

Denne funksjonen er parameter vil være en annen købeholder av en relatert type. Denne funksjonen gjør det ikke komme tilbake hva som helst.

Feil og unntak

Hvis køene ikke er av samme type, kaster det et unntak. Hvis ikke, er det en grunnleggende garanti uten unntak.

Eksempel på bytte ()

For å bytte elementene i en kø, bruk byttemetoden (). Først oppretter vi køen. Så åpne enhver C ++ -kompilator for å kjøre programmet. Vi inkluderte opprinnelig overskriftsfil #include for å konstruere en kø. Skyv verdien til køen.

I dette eksemplet har vi laget en karakterkø. Vi har lagt til komponenter i køens slutt. Vi har benyttet oss av en for sløyfe og mens sløyfe og andre køsteknikker i stedet for bare å rapportere elementene i køen direkte.

Kø :: Emplace

Ved å bruke denne funksjonen, kan flere elementer legges til i købeholderen.

Syntaks

Her er et skjermbilde av Syntaks for emplater () -funksjonen.

Verdien som skal legges til på slutten av købeholderen vil tjene som funksjonens parameter. Denne funksjonen returnerer ikke noe.

Feil og unntak

Tilbyr samme grad av forsikring som operasjonen som ble utført på det underliggende beholderobjektet.

Eksempel på emplace ()

Benytt deg av Emplace () -funksjonen for å innlemme et køelement. Kjør først programmet med hvilken som helst C ++ -kompilator siden vi etablerer køen.

I dette eksemplet er det opprettet en strengkø. Komponenter er lagt til i køen. I stedet for bare å rapportere køens elementer direkte, brukte vi en stundsløyfe og ytterligere køstrategier. For å vise utdataene, ta komponentene ut av køen etter det.

Konklusjon

Købeholderen og dens anvendelse i C ++ er dekket i denne artikkelen. Købeholderne følger den første i First Out (FIFO) -metoden. Denne artikkelen forklarer også andre nyttige iboende medlemsfunksjoner som er tilgjengelige i C ++ som push (), pop (), front (), back (), swap (), emplace (), størrelse () og tom (). Disse C ++ -funksjonene har flere metoder for å utføre forskjellige operasjoner i en kø som hjelper programmerere med å bruke købeholdere mer effektivt.