strings pair tuples stl
Lær hurtigt de grundlæggende koncepter for strenge, par og tupler i STL.
I denne vejledning får vi grundlæggende viden om strenge, par og tupler i STL, før vi rent faktisk hopper til detaljerede og større koncepter som Iteratorer, Algoritmer og Containere.
Selvom strenge bruges på samme måde som i almindeligt C ++ sprog, er det værd at diskutere fra STL-synspunkt. Vi kan tænke på strenge som en sekventiel beholder med tegn. Også når vi beskæftiger os med skabelonkurser i STL, er det meget vigtigt, at vi kender begrebet PAIR og TUPLE med hensyn til STL.
=> Tjek dybdegående C ++ træningsvejledninger her.
Hvad du vil lære:
Strings In STL
Strenge i STL understøtter både ASCII- og Unicode-format (bred tegn).
STL understøtter to typer strenge:
# 1) streng: Dette er ASCII-formatstrengen, og for at inkludere denne type strengobjekter i programmet skal vi inkludere string.h-filen i vores program.
#include
# 2) bånd: Dette er den brede karakterstreng. I MFC-programmering kalder vi det en CString. For at inkludere wstring-objekter i vores program inkluderer vi filen xstring.
#include
Uanset om det er ASCII eller Unicode, understøtter strenge i STL forskellige metoder på den måde, som de andre STL-containere gør.
Nogle af metoderne understøttet af strengobjektet er:
- begynde() : Returner iterator i starten.
- ende() : Returner iterator i slutningen.
- indsæt () : Indsæt i streng.
- slette() : Slet tegn fra streng.
- størrelse() : Returnerer længden af streng.
- tom() : Tøm indholdet af strengen.
Bortset fra disse ovenfor anførte metoder har vi allerede dækket strengklassemetoder i vores tidligere strenge i C ++ tutorials.
Lad os skrive et simpelt program til at demonstrere STL-strenge.
qa interview spørgsmål og svar pdf
#include #include using namespace std; int main() { string str1; str1.insert(str1.end(),'W'); str1.insert(str1.end(),'O'); str1.insert(str1.end(),'R'); str1.insert(str1.end(),'L'); str1.insert(str1.end(),'D'); for (string::const_iterator it = str1.begin(); it != str1.end(); ++it) { cout << *it; } int len = str1.size(); cout<<'
Length of string:'< Produktion:
VERDEN
Strengens længde: 5
I ovenstående kode erklærer vi, som vi har set, et strengobjekt str1 og derefter ved hjælp af indsætningsmetoden tilføjer vi tegn en efter en i slutningen af strengen. Derefter viser vi strengen ved hjælp af et iteratorobjekt.
Dernæst udsender vi længden af strengen ved hjælp af størrelsesmetoden. Dette er et simpelt program til kun at demonstrere strengene.
PAR I STL
PAIR-klasse i STL er praktisk, når du programmerer de associerende containere. PAIR er en skabelonklasse, der grupperer to værdier af den samme eller forskellige datatyper.
Den generelle syntaks er:
pair pair1, pair2;
Ovenstående kodelinje opretter to par, dvs. par1 og par2. Begge disse par har det første objekt af typen T1 og det andet objekt af typen T2.
T1 er det første medlem, og T2 er det andet medlem af par1 og par2.
Følgende er de metoder, der understøttes af PAIR-klassen:
- Operatør (=): Tildel værdier til et par.
- bytte rundt: Byt indholdet af parret.
- make_pair (): Opret og returnerer et par med objekter defineret af parameterlisten.
- Operatører (==,! =,>,<, = ) : Sammenligner to par leksikografisk.
Lad os skrive et grundlæggende program, der viser brugen af disse funktioner i kode.
#include using namespace std; int main () { pair pair1, pair3; pair pair2; pair1 = make_pair(1, 2); pair2 = make_pair(1, 'SoftwareTestingHelp'); pair3 = make_pair(2, 4); cout<< '
Pair1 First member: '< Produktion:
Par1 Første medlem: 1
kan du føje til en matrix i java
Pair2 Andet medlem: SoftwareTestingHelp
Par er ikke ens
I ovenstående program opretter vi to par af typen heltal hver og et andet par af typen heltal og streng. Dernæst ved hjælp af 'make_pair' -funktionen tildeler vi værdier til hvert par.
Dernæst sammenligner vi par1 og par2 ved hjælp af operatoren “==” for at kontrollere, om de er ens eller ikke. Dette program demonstrerer den grundlæggende arbejde i PAIR-klassen.
Tuple i STL
Tuple-koncept er en udvidelse af par. Parret kan vi kombinere to heterogene objekter, mens vi i tupler kan kombinere tre heterogene objekter.
Den generelle syntaks for en tuple er:
tupletuple1;
Ligesom par understøtter tuple også lignende funktioner og nogle flere yderligere funktioner.
Disse er anført nedenfor:
- Bygger: At konstruere en ny tuple.
- Tuple_element: Returnerer typen af tupleelement.
- make_tuple (): Opretter og returnerer en tuple med elementer beskrevet af parameterlisten.
- Operatører (==,! =,>,<, = ): Leksikografisk sammenligner to par.
- Operatør (=): At tildele værdi til en tuple.
- bytte rundt: At bytte værdien af to tupler.
- Binde: Bind værdier af en tuple til dens referencer.
Lad os bruge nogle af disse funktioner i et program til at se, hvordan de fungerer.
#include #include using namespace std; int main () { tuple tuple1; tuple tuple2; tuple1 = make_tuple(1, 2,3); tuple2 = make_tuple(1,'Hello', 'C++ Tuples'); int id; string str1, str2; tie(id, str1, str2) = tuple2; cout << id <<' '<< str1 <<' '<< str2; return 0; }
Produktion:
1 Hej C ++ Tuples
I ovenstående kode for at demonstrere tupler opretter vi to tupler. Den første tupel tuple1 består af tre heltal værdier. Anden tuple, dvs. tuple2 består af en heltal og to strengværdier.
Dernæst tildeler vi værdier til begge tuplerne ved hjælp af 'make_tuple' -funktionen. Derefter bruger vi 'tie' -funktionskald, vi binder eller tildeler værdierne fra tuple2 til id og to strenge.
Endelig udsender vi disse værdier. Outputtet viser værdierne fra tuple2, som vi tildelte id og to strenge.
Konklusion
Således har vi i denne vejledning kort diskuteret strenge, par og tuple, der blev brugt i STL. Mens strengeoperationer ligner generel C ++, kan vi derudover også betjene iteratorer på disse strenge.
Par- og dobbeltkonstruktioner er nyttige, når du programmerer STL-containere, især de associerende containere.
I vores kommende tutorial lærer vi detaljeret om algoritmer og iteratorer, inden vi springer til den faktiske STL-programmering ved hjælp af STL.
=> Besøg her for at se C ++ træningsserien for alle.
Anbefalet læsning