C++-manual | ||
---|---|---|
Förutgående | Kapitel 18. Stränghantering | Nästa |
Såsom vi redan sett i tidigare exempel är det möjligt att tilldela strängar värden av andra strängar med hjälp av operatorn =. Den tilldelade strängen gör då en kopia av originalsträngen. Ett alternativt sätt är att använda metoden assign() som kan ta som argument en annan sträng, en C-sträng (char *) eller ett tecken (char). Den kan användas på t.ex. följande sätt:
string S1; string S2; S1 = "C++ är kul"; S2 = S1; // eller S2.assign ( S1 ); |
Man kan även jämföra strängar med hjälp av operatorn ==, varvid alla tecken i de två strängarna jämförs och uttrycket evalueras till true om de är identiska och false och de ej är det. Man kan alltså skriva kod som i exemplet nedan som jämför en sträng med en strängkonstant:
string Anvandare; cin >> Anvandare; if ( Anvandare == "root" ) { // superuser, gör nåt kul ... } |
Normala vektorer kan man inte jämföra med ==, men för klassen string är det alltså möjligt. Förutom likhet kan man test olikhet m.h.a. operatorn !=.
Alfabetisk jämförelse av strängar kan göras med operatorerna <, >, <= och >=. Dessa jämför strängarna enligt ASCII-tabellen och evalueras till true eller false beroende på vilken sträng som är större eller mindre.
Förutgående | Hem | Nästa |
Accessera enskilda tecken | Upp | Insättning av text |