Namespaces
Variants

std:: numpunct_byname

From cppreference.net
Défini dans l'en-tête <locale>
template < class CharT >
class numpunct_byname : public std:: numpunct < CharT > ;

std::numpunct_byname est une facette std::numpunct qui encapsule les préférences de ponctuation numérique d'une locale spécifiée lors de sa construction.

Table des matières

Spécialisations

La bibliothèque standard garantit la fourniture des spécialisations suivantes :

Défini dans l'en-tête <locale>
std :: numpunct_byname < char > Facette std::numpunct spécifique aux paramètres régionaux pour les E/S de caractères étroits
std :: numpunct_byname < wchar_t > Facette std::numpunct spécifique aux paramètres régionaux pour les E/S de caractères larges

Types imbriqués

Type Définition
char_type CharT
string_type std:: basic_string < CharT >

Fonctions membres

(constructor)
construit un nouveau facet numpunct_byname
(fonction membre publique)
(destructor)
détruit un facet numpunct_byname
(fonction membre protégée)

std::numpunct_byname:: numpunct_byname

explicit numpunct_byname ( const char * name, std:: size_t refs = 0 ) ;
explicit numpunct_byname ( const std:: string & name, std:: size_t refs = 0 ) ;
(depuis C++11)

Construit un nouveau facet std::numpunct_byname pour une locale avec name .

refs est utilisé pour la gestion des ressources : si refs == 0 , l'implémentation détruit le facet lorsque le dernier objet std::locale le contenant est détruit. Sinon, l'objet n'est pas détruit.

Paramètres

name - le nom de la locale
refs - le nombre de références liées au facet

std::numpunct_byname:: ~numpunct_byname

protected :
~numpunct_byname ( ) ;

Détruit le facet.

Hérité de std:: numpunct

Types imbriqués

Type Définition
char_type CharT
string_type std:: basic_string < CharT >

Membres de données

Membre Description
std::locale::id id [static] l'identifiant de la facette

Fonctions membres

appelle do_decimal_point
(fonction membre publique de std::numpunct<CharT> )
appelle do_thousands_sep
(fonction membre publique de std::numpunct<CharT> )
appelle do_grouping
(fonction membre publique de std::numpunct<CharT> )
appelle do_truename ou do_falsename
(fonction membre publique de std::numpunct<CharT> )

Fonctions membres protégées

fournit le caractère à utiliser comme séparateur décimal
(fonction membre virtuelle protégée de std::numpunct<CharT> )
fournit le caractère à utiliser comme séparateur de milliers
(fonction membre virtuelle protégée de std::numpunct<CharT> )
[virtual]
fournit le nombre de chiffres entre chaque paire de séparateurs de milliers
(fonction membre virtuelle protégée de std::numpunct<CharT> )
fournit la chaîne à utiliser comme nom des valeurs booléennes true et false
(fonction membre virtuelle protégée de std::numpunct<CharT> )

Exemple

Cet exemple démontre comment appliquer les règles de ponctuation numérique d'une autre langue sans modifier le reste des paramètres régionaux.

#include <iostream>
#include <locale>
int main()
{
    const double number = 1000.25;
    std::wcout << L"default locale: " << number << L'\n';
    std::wcout.imbue(std::locale(std::wcout.getloc(),
                                 new std::numpunct_byname<wchar_t>("ru_RU.UTF8")));
    std::wcout << L"default locale with russian numpunct: " << number << L'\n';
}

Sortie :

default locale: 1000.25
default locale with russian numpunct: 1 000,25

Voir aussi

définit les règles de ponctuation numérique
(modèle de classe)