Partager via


basic_string, classe

Les séquences contrôlées par un objet de la classe de modèle basic_string correspondent à la classe de chaîne C++ standard et sont généralement appelées chaînes. Toutefois, elles ne doivent pas être confondues avec les chaînes de style C se terminant par un caractère Null et utilisées dans la bibliothèque C++ standard. La chaîne C++ Standard est un conteneur qui permet d'utiliser les chaînes en tant que types normaux, par exemple pour les opérations de comparaison et de concaténation, les itérateurs, les algorithmes STL, ainsi que les opérations de copie et d'assignation avec utilisation de la mémoire managée par la classe allocator. Si vous devez convertir une chaîne C++ standard en chaîne de style C se terminant par un caractère Null, utilisez le membre basic_string::c_str.

template <class CharType, class Traits = char_traits<CharType>, class Allocator = allocator<CharType>> class basic_string;

Paramètres

  • CharType
    Type de données d'un seul caractère à stocker dans la chaîne. La bibliothèque C++ standard fournit des spécialisations de cette classe de modèle avec la chaîne des définitions de type pour les éléments de type char, wstring, pour wchar_t, u16string pour char16_t et u32string pour char32_t.

  • Traits
    Plusieurs propriétés importantes des éléments CharType d'une spécialisation basic_string sont décrites par la classe Traits. La valeur par défaut est char_traits<CharType>.

  • Allocator
    Type qui représente l'objet allocateur stocké qui contient des informations sur l'allocation et la libération de mémoire de la chaîne. La valeur par défaut est allocator<CharType>.

Constructeurs

basic_string

Construit une chaîne vide ou initialisée par des caractères spécifiques, ou qui représente une copie complète ou partielle d'un autre objet string ou d'une autre chaîne de style C.

Typedef

allocator_type

Type qui représente la classe allocator d'un objet string.

const_iterator

Type qui fournit un itérateur à accès aléatoire pouvant accéder à un élément const et le lire dans la chaîne.

const_pointer

Type qui fournit un pointeur vers un élément const d'une chaîne.

const_reference

Type qui fournit une référence à un élément const stocké dans une chaîne pour la lecture et l'exécution des opérations const.

const_reverse_iterator

Type qui fournit un itérateur à accès aléatoire pouvant lire un élément const dans la chaîne.

difference_type

Type qui fournit la différence entre deux itérateurs qui font référence aux éléments d'une même chaîne.

iterator

Type qui fournit un itérateur à accès aléatoire pouvant lire ou modifier un élément d'une chaîne.

npos

Valeur intégrale non signée initialisée à -1, qui indique « introuvable » ou « tous les caractères restants » quand une fonction de recherche échoue.

pointer

Type qui fournit un pointeur vers un élément caractère d'une chaîne ou d'un tableau de caractères.

référence

Type qui fournit une référence à un élément stocké dans une chaîne.

reverse_iterator

Type qui fournit un itérateur à accès aléatoire pouvant lire ou modifier un élément d'une chaîne inversée.

type_taille

Type intégral non signé pour le nombre d'éléments d'une chaîne.

traits_type

Type pour les caractéristiques de caractère des éléments stockés dans une chaîne.

value_type

Type qui représente le type des caractères stockés dans une chaîne.

Fonctions membres

append

Ajoute des caractères à la fin d'une chaîne.

assign

Assigne de nouvelles valeurs de caractère au contenu d'une chaîne.

at

Retourne une référence à l'élément à un emplacement spécifié dans la chaîne.

back

begin

Retourne un itérateur qui traite le premier élément de la chaîne.

c_str

Convertit le contenu d'une chaîne en chaîne de style C se terminant par un caractère Null.

capacity

Retourne le plus grand nombre d'éléments qui peuvent être stockés dans une chaîne sans augmenter l'allocation de mémoire de la chaîne.

cbegin

Retourne un itérateur const qui traite le premier élément de la chaîne.

cend

Retourne un itérateur const qui traite l'emplacement situé après le dernier élément d'une chaîne.

clear

Efface tous les éléments d'une chaîne.

compare

Compare une chaîne à une chaîne spécifique pour déterminer si les deux chaînes sont équivalentes, ou si l'une est inférieure à l'autre d'un point de vue lexicographique.

copy

Copie tout au plus un nombre spécifique de caractères d'une position indexée dans une chaîne source vers un tableau de caractères cible. Obsolète. Utilisez plutôt basic_string::_Copy_s.

crbegin

Retourne un itérateur const qui traite le premier élément d'une chaîne inversée.

crend

Retourne un itérateur const qui traite l'emplacement qui suit le dernier élément d'une chaîne inversée.

_Copy_s

Copie tout au plus un nombre spécifique de caractères d'une position indexée dans une chaîne source vers un tableau de caractères cible.

données

Convertit le contenu d'une chaîne en tableau de caractères.

empty

Effectue un test pour déterminer si la chaîne contient des caractères.

end

Retourne un itérateur qui traite l'emplacement qui suit le dernier élément d'une chaîne.

erase

Supprime un élément ou une plage d'éléments dans une chaîne à partir de l'emplacement spécifié.

find

Recherche une chaîne vers l'avant pour trouver la première occurrence d'une sous-chaîne qui correspond à une séquence spécifique de caractères.

find_first_not_of

Recherche dans une chaîne le premier caractère qui n'est pas un élément de la chaîne spécifiée.

find_first_of

Recherche dans une chaîne le premier caractère qui correspond à un élément de la chaîne spécifiée.

find_last_not_of

Recherche dans une chaîne le dernier caractère qui n'est pas un élément de la chaîne spécifiée.

find_last_of

Recherche dans une chaîne le dernier caractère qui est un élément de la chaîne spécifiée.

front

Retourne une référence au premier élément d'une chaîne.

get_allocator

Retourne une copie de l'objet allocator utilisé pour construire la chaîne.

insert

Insère un élément, un certain nombre d'éléments ou une plage d'éléments dans la chaîne à la position spécifiée.

length

Retourne le nombre actuel d'éléments contenus dans une chaîne.

max_size

Retourne le nombre maximal de caractères qu'une chaîne peut contenir.

pop_back

Efface le dernier élément de la chaîne.

push_back

Ajoute un élément à la fin de la chaîne.

rbegin

Retourne un itérateur au premier élément d'une chaîne inversée.

rend

Retourne un itérateur qui pointe juste après le dernier élément d'une chaîne inversée.

replace

Remplace les éléments d'une chaîne à la position spécifiée par des caractères spécifiques ou des caractères copiés à partir d'autres plages, chaînes ou chaînes de style C.

reserve

Définit la capacité de la chaîne en fonction d'un nombre au moins aussi grand que le nombre spécifié.

resize

Spécifie une nouvelle taille pour une chaîne, en ajoutant ou en effaçant des éléments selon les besoins.

rfind

Recherche une chaîne vers l'arrière pour trouver la première occurrence d'une sous-chaîne qui correspond à une séquence spécifique de caractères.

shrink_to_fit

Ignore la capacité excédentaire de la chaîne.

size

Retourne le nombre actuel d'éléments contenus dans une chaîne.

substr

Copie une sous-chaîne d'un certain nombre de caractères dans une chaîne qui commence à la position spécifiée.

échange

Échange le contenu de deux chaînes.

Opérateurs

opérateur +=

Ajoute des caractères à une chaîne.

opérateur =

Assigne de nouvelles valeurs de caractère au contenu d'une chaîne.

operator[]

Fournit une référence au caractère situé à l'index spécifié dans une chaîne.

Notes

Si une fonction doit générer une séquence supérieure au nombre maximal d'éléments (max_size), la fonction signale une erreur de longueur en levant un objet de type length_error.

Les références, pointeurs et itérateurs qui désignent les éléments de la séquence contrôlée peuvent devenir non valides après un appel à une fonction qui change la séquence contrôlée, ou après le premier appel à une fonction membre non const.

Configuration requise

En-tête : <string>

Espace de noms : std

Voir aussi

Référence

<string>

Sécurité des threads dans la bibliothèque standard C++