Libreria locale C ++ - scan_not

Descrizione

Restituisce il primo carattere non nella categoria e restituisce il primo carattere nell'intervallo [basso, alto) che non si classifica in nessuna delle categorie specificate in m. Se non viene trovato alcun carattere di questo tipo nell'intervallo, viene restituito high.

Dichiarazione

Di seguito è riportata la dichiarazione per std :: ctype :: scan_not.

C ++ 98

const char_type* scan_not (mask m, const char_type* low, const char_type* high) const;

C ++ 11

const char_type* scan_not (mask m, const char_type* low, const char_type* high) const;

Parametri

  • m - È una maschera di bit della maschera del tipo di membro.

  • low,high - È un puntatore all'inizio e alla fine della sequenza di caratteri.

Valore di ritorno

Restituisce un puntatore al primo elemento dell'intervallo che classifica, o alto se non ne viene trovato nessuno.

Eccezioni

Strong guarantee - se viene lanciata un'eccezione, non ci sono effetti.

Gare di dati

Si accede all'oggetto e agli elementi nell'intervallo [basso, alto).

Esempio

Nell'esempio seguente viene illustrato lo std :: ctype :: scan_not.

#include <iostream>
#include <locale>

int main () {
   std::locale loc;

   const char period[] = "june2018";

   const char * p = std::use_facet< std::ctype<char> >(loc).scan_not 
      ( std::ctype<char>::alpha, period, period+12 );

   std::cout << "The first non-alphabetic character is: " << *p << '\n';

   return 0;
}

Compiliamo ed eseguiamo il programma sopra, questo produrrà il seguente risultato:

The first non-alphabetic character is: 2