Biblioteca C ++ Locale - é
Descrição
É uma classificação de personagens.
Declaração
A seguir está a declaração para std :: ctype :: is.
C ++ 98
bool is (mask m, char_type c) const;
const char_type* is (const char_type* low,
const char_type* high, mask* vec) const;
C ++ 11
bool is (mask m, char_type c) const;
const char_type* is (const char_type* low,
const char_type* high, mask* vec) const;
Parâmetros
m - É uma máscara de bits de máscara de tipo de membro.
c - É um personagem para classificar.
vec - É uma matriz de destino.
Valor de retorno
Ele retorna verdadeiro se c for classificado em qualquer uma das categorias passadas como máscara m.
Exceções
Strong guarantee - se uma exceção é lançada, não há efeitos.
Corridas de dados
O objeto local é acessado.
Exemplo
No exemplo a seguir, explica sobre std :: ctype :: is.
#include <iostream>
#include <locale>
int main () {
std::locale loc;
const char quote[] = "Tutorialspoint is a one of the best site .";
std::cout << '"' << quote << "\"\n";
std::cout << "The quote begins with an uppercase letter? ";
std::cout << std::boolalpha;
std::cout << std::use_facet< std::ctype<char> >(loc).is (std::ctype
<char>::upper, quote[0]);
std::cout << '\n';
int cx = 0;
std::ctype<char>::mask * masks = new std::ctype<char>::mask [60];
std::use_facet< std::ctype<char> >(loc).is (quote, quote+60, masks);
for (int i=0; i<60; ++i) if (masks[i] & std::ctype<char>::space) ++cx;
std::cout << "The quote has " << cx << " whitespaces.\n";
return 0;
}
Vamos compilar e executar o programa acima, isso produzirá o seguinte resultado -
"Tutorialspoint is a one of the best site ."
The quote begins with an uppercase letter? true
The quote has 8 whitespaces.