std::ctype <char> :: scan_not
|
Défini dans l'en-tête
<locale>
|
||
|
const
char
*
scan_not
(
mask m,
const
char
*
beg,
const
char
*
end
)
const
;
|
||
Localise le premier caractère dans le tableau de caractères
[
beg
,
end
)
qui ne satisfait pas au masque de classification
m
, c'est-à-dire le premier caractère
c
tel que
table
(
)
[
(
unsigned
char
)
c
]
&
m
renverrait
false
.
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
| m | - | masque à rechercher |
| beg | - | pointeur vers le premier caractère dans un tableau de caractères à rechercher |
| end | - | pointeur juste après la fin du tableau de caractères à rechercher |
Valeur de retour
Pointeur vers le premier caractère dans
[
beg
,
end
)
qui ne satisfait pas le masque, ou
end
si aucun caractère de ce type n'a été trouvé.
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
#include <iostream> #include <iterator> #include <locale> int main() { auto& f = std::use_facet<std::ctype<char>>(std::locale()); // ignorer les espaces blancs en tête char s1[] = " \t\t\n Test"; const char* p1 = f.scan_not(std::ctype_base::space, std::begin(s1), std::end(s1)); std::cout << '\'' << p1 << "'\n"; // ignorer les chiffres en tête char s2[] = "123456789abcd"; const char* p2 = f.scan_not(std::ctype_base::digit, std::begin(s2), std::end(s2)); std::cout << '\'' << p2 << "'\n"; }
Sortie :
'Test' 'abcd'
Voir aussi
|
[virtual]
|
localise le premier caractère d'une séquence qui ne correspond pas à la classification donnée
(fonction membre protégée virtuelle de
std::ctype<CharT>
)
|
|
localise le premier caractère d'une séquence qui correspond à la classification donnée, en utilisant la table de classification
(fonction membre publique) |