Namespaces
Variants

std::ctype <char> :: is

From cppreference.net
Défini dans l'en-tête <locale>
bool is ( mask m, char c ) const ;
(1)
const char * is ( const char * low, const char * high, mask * vec ) const ;
(2)
1) Vérifie si le caractère c est classifié par le masque m selon la table de classification retournée par la fonction membre table() . Calcule effectivement table ( ) [ ( unsigned char ) c ] & m .
2) Pour chaque caractère dans le tableau de caractères [ low , high ) , lit son masque de classification complet depuis la table de classification retournée par la fonction membre table() (c'est-à-dire, évalue table ( ) [ ( unsigned char ) * p ] et le stocke dans l'élément correspondant du tableau pointé par vec .

Si ( unsigned char ) c >= std:: ctype < char > :: table_size , alors une valeur définie par l'implémentation est substituée à la place de table ( ) [ ( unsigned char ) c ] , potentiellement différente pour différentes valeurs de c .

Table des matières

Paramètres

c - caractère à classifier
m - masque à utiliser pour classifier un seul caractère
low - pointeur vers le premier caractère dans un tableau de caractères à classifier
high - pointeur situé juste après la fin du tableau de caractères à classifier
vec - pointeur vers le premier élément du tableau de masques à remplir

Valeur de retour

1) true si c est classifié par m dans table ( ) , false sinon.
2) high

Notes

Contrairement au modèle principal std:: ctype , cette spécialisation n'effectue pas d'appel de fonction virtuelle lors de la classification des caractères. Pour personnaliser le comportement, une classe dérivée peut fournir une table de classification non par défaut au constructeur de la classe de base.

Exemple

Rapports de défauts

Les rapports de défauts modifiant le comportement suivants ont été appliqués rétroactivement aux normes C++ précédemment publiées.

DR Appliqué à Comportement tel que publié Comportement correct
LWG 28 C++98 la surcharge (2) copiait les valeurs de vec vers table ( ) ,
ce qui est l'inverse du comportement prévu
corrigé

Voir aussi

[virtual]
classe un caractère ou une séquence de caractères
(fonction membre protégée virtuelle de std::ctype<CharT> )