std::time_put_byname

来自cppreference.com
< cpp‎ | locale

定义于头文件 <locale>
template< class CharT, class OutputIterator = std::ostreambuf_iterator<CharT> >
class time_put_byname : public std::time_put<CharT, OutputIterator>;
std::time_put_byname是一个std::time_put方面,封装的日期和时间格式的规则,在其建设中指定的区域设置.
原文:
std::time_put_byname is a std::time_put facet which encapsulates time and date formatting rules of the locale specified at its construction.
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
两个专业所提供的标准库
原文:
Two specializations are provided by the standard library
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
定义于头文件 <locale>
std::time_put_byname<char, OutputIterator>
窄/多字节的时间格式
原文:
narrow/multibyte time formatting
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
std::time_put_byname<wchar_t>, OutputIterator
宽字符串格式
原文:
wide string time formatting
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

目录

[编辑] 会员类型

会员类型
原文:
Member type
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
Definition
char_type CharT
iter_type OutputIterator

[编辑] 成员函数

构造一个新time_put_byname方面
原文:
constructs a new time_put_byname facet
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

(公开成员函数)
解构一个time_put_byname方面
原文:
destructs a time_put_byname facet
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

(受保护成员函数)

继承自 std::time_put

Member objects

会员名称
原文:
Member name
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
Type
id (静态的) std::locale::id

Member functions

调用do_put
原文:
invokes do_put
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

(std::time_put 的公开成员函数) [编辑]

Protected member functions

[虚]
日期/时间的格式,并写入到输出流
原文:
formats date/time and writes to output stream
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

(std::time_get 的虚受保护成员函数) [编辑]

[编辑] 示例

这个例子将当前的时间,使用“C”语言环境与的的time_put方面取代各种time_put_byname方面的
原文:
This example prints current time using the "C" locale with the time_put facet replaced by various time_put_byname facets
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

#include <iostream>
#include <ctime>
#include <iomanip>
#include <codecvt>
 
int main()
{
    std::time_t t = std::time(NULL);
    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")));
    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'; 
}

可能的输出:

木曜日 2012年08月09日 21時41分02秒
Четверг Чт. 09 авг. 2012 21:41:02
torsdag tor  9 aug 2012 21:41:02

[编辑] 另请参阅

格式内容的struct std::tm输出字符序列
原文:
formats contents of struct std::tm for output as character sequence
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

(类模板) [编辑]