Libreria locale C ++ - always_noconv

Descrizione

Restituisce se le conversioni tra il tipo interno ed esterno, in entrambe le direzioni, producono sempre una copia senza alcuna conversione reale.

Dichiarazione

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

C ++ 98

int always_noconv() const throw();

C ++ 11

int always_noconv() const noexcept;

Parametri

nessuna

Valore di ritorno

Restituisce vero se codecvt :: in e codecvt :: out restituiranno sempre noconv.

Eccezioni

No-throw guarantee - non genera mai eccezioni.

Gare di dati

Si accede all'oggetto facet.

Esempio

Nell'esempio seguente viene spiegato std :: ctype :: always_noconv.

#include <iostream>
#include <locale>

int main () {
   std::locale loc;

   std::cout << std::boolalpha;

   std::cout << "always_noconv for codecvt<char,char,mbstate_t>: ";
   std::cout << std::use_facet<std::codecvt<char,char,mbstate_t> >(loc).always_noconv();
   std::cout << '\n';

   std::cout << "always_noconv for codecvt<wchar_t,char,mbstate_t>: ";
   std::cout << std::use_facet<std::codecvt<wchar_t,char,mbstate_t> >(loc).always_noconv();
   std::cout << '\n';

   return 0;
}

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

always_noconv for codecvt<char,char,mbstate_t>: true
always_noconv for codecvt<wchar_t,char,mbstate_t>: false