Aller au contenu

Libstdcpp/string

Un livre de Wikilivres.

La librairie standard C++ : std::string

[modifier | modifier le wikicode]

La classe string représente une chaîne de caractères.

 std::string nom("Ceci est une chaîne de caractères");

Comme les types de base du langage, cette classe offre tout un ensemble d'opérateurs. Il est évidemment possible d'injecter ou d'extraire un string d'un flux, mais aussi de faire des concaténations avec l'opérateur operator+.

 std::string nom("Ceci est une chaîne");
 std::cout << nom << "\n";
 nom += std::string(" de caractères");
 std::cout << nom << "\n";

Des classes similaires

[modifier | modifier le wikicode]

Même si std::string est utilisé comme une classe, elle n'est en fait pas une classe en tant que telle. Elle est définie par le standard comme :

 typedef std::basic_string<char> string;

On voit que cette classe est donc l'instanciation d'un template basic_string. Ainsi, une autre classe est définie de manière similaire pour des variables nécessitant des caractères étendus : wstring. Cette nouvelle classe utilise le type de base wchar_t pour instancier le template.

 typedef std::basic_string<wchar_t> wstring;