std:: time_put_byname
|
Défini dans l'en-tête
<locale>
|
||
|
template
<
class
CharT,
|
||
std::time_put_byname
est une facette
std::time_put
qui encapsule les règles de formatage de l'heure et de la date de la locale spécifiée lors de sa construction.
Table des matières |
Spécialisations
La bibliothèque standard garantit de fournir chaque spécialisation qui satisfait aux exigences de type suivantes :
-
CharTest l'un des char et wchar_t , et -
OutputItdoit satisfaire aux exigences de LegacyOutputIterator .
Types imbriqués
| Type | Définition |
char_type
|
CharT
|
iter_type
|
OutputIt
|
Fonctions membres
|
(constructeur)
|
construit un nouveau facet
time_put_byname
(fonction membre publique) |
|
(destructeur)
|
détruit un facet
time_put_byname
(fonction membre protégée) |
std::time_put_byname:: time_put_byname
|
explicit
time_put_byname
(
const
char
*
name,
std::
size_t
refs
=
0
)
;
|
||
|
explicit
time_put_byname
(
const
std::
string
&
name,
std::
size_t
refs
=
0
)
;
|
(depuis C++11) | |
Construit un nouveau facet
std::time_put_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::time_put_byname:: ~time_put_byname
|
protected
:
~time_put_byname ( ) ; |
||
Détruit le facet.
Hérité de std:: time_put
Membres de données
| Membre | Description |
std::locale::id
id
[static]
|
l'identifiant de la facette |
Fonctions membres
invoque
do_put
(fonction membre publique de
std::time_put<CharT,OutputIt>
)
|
Fonctions membres protégées
|
[virtual]
|
formate la date/heure et écrit dans le flux de sortie
(fonction membre protégée virtuelle de
std::time_put<CharT,OutputIt>
)
|
Exemple
Affiche l'heure actuelle en utilisant les paramètres régionaux "C" avec le
facet
time_put
remplacé par divers facets
std::time_put_byname
.
Le résultat affiché a été obtenu en utilisant le compilateur clang.
#include <codecvt> #include <ctime> #include <iomanip> #include <iostream> int main() { std::time_t t = std::time(nullptr); std::wbuffer_convert<std::codecvt_utf8<wchar_t>> conv(std::cout.rdbuf()); std::wostream out(&conv); out.imbue(std::locale(out.getloc(), new std::time_put_byname<wchar_t>("ja_JP.utf8"))); out << std::put_time(std::localtime(&t), L"%A %c") << '\n'; out.imbue(std::locale(out.getloc(), new std::time_put_byname<wchar_t>("ru_RU.utf8"))); out << std::put_time(std::localtime(&t), L"%A %c") << '\n'; out.imbue(std::locale(out.getloc(), new std::time_put_byname<wchar_t>("sv_SE.utf8"))); out << std::put_time(std::localtime(&t), L"%A %c") << '\n'; }
Sortie possible :
木曜日 2023年10月05日 19時44分51秒 Четверг Чт 05 окт 2023 19:44:51 torsdag tor 5 okt 2023 19:44:51
Voir aussi
|
formate le contenu de
std::tm
pour la sortie sous forme de séquence de caractères
(modèle de classe) |