2012-02-24 43 views

回答

1

哈克变通可能是:

#include <iostream> 
#include <boost/date_time/gregorian/gregorian.hpp> 

int main(void) 
{ 
    auto ptr = boost::gregorian::greg_month::get_month_map_ptr(); 

    if (ptr) 
    { 
    auto it = ptr->begin(); 
    for(; it != ptr->end(); ++it) 
    { 
     std::cout << it->first << " " << it->second << '\n'; 
    } 
    } 
} 

该地图包含了所有的短/长名和短必要之间的映射创建一个greg_month实例。只需要创建一个围绕它一点包装...

每格雷姆的发现,有它封装本已boost::date_time::month_str_to_ushort<>

+0

刚刚发现的功能已经wrappin这一个方便的功能:刺激:: date_time的:: month_str_to_ushort 。谢谢您的帮助! – Graeme 2012-02-24 14:31:18

+0

@Graeme,啊哈 - 它必须在那里 - 这是一个很平凡的功能...... :) – Nim 2012-02-24 14:32:09

0

是的,有提升日期时间构面可用于创建语言环境并将其放入流中。

请注意,如果您打算打印或解析大量日期和时间,则不会为您解析的每个日期和区域创建方面和区域设置。

查看here了解有关输入日期的文档。他们的一些示例使用了短短的一个月的名称,这似乎有%bformat specifier

相关问题