C++-manual
Förutgående | Kapitel 18. Stränghantering | Nästa

# Tilldelning och jämförelse

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