打开APP
未登录
开通VIP,畅享免费电子书等14项超值服
开通VIP
首页
好书
留言交流
下载APP
联系客服
【Boost】date构造方法
wtkc
>《date_time》
2014.10.26
关注
1. 概述
头文件: <boost/date_time.hpp>
本库采用格里历日期系统, 支持从1400-Jan-01到9999-Dec-31.
类boost::gregorian::date是用户使用的主要时间类型.
2. 构造函数
date_time中使用枚举special_values定义了一些特殊的时间概念,包括:
pos_infin(正无限)
neg_infin(负无限)
not_a_date_time(无效时间)
min_date_time(最小日期或时间)
max_date_time(最大日期或者时间)
另外还提供了5个is_xxx函数,用于检验日期是否是特殊日期,
is_infinity(是否是一个无限日期)
is_neg_infinity(是否是一个负无限日期)
is_pos_infinity(是否是一个正无限日期)
is_not_adate(是否是一个无效日期)
is_special(是否是任意一个特殊日期)
3. 例子
[cpp]
view plain
copy
print
?
void test_dt_construct()
{
using namespace boost::gregorian;
// 1. 常规的构造函数有如下几种:
date d0;
date d1(2008, 8, 9); // 最常用的构造方法
date d2(d1); // 复制构造
date ds1(neg_infin);
date ds2(pos_infin);
date ds3(not_a_date_time);
date ds4(max_date_time); // 9999-Dec-31
date ds5(min_date_time); // 1400-Jan-01
assert(d0.is_not_a_date());
assert(d0.is_special());
assert(ds1.is_special());
assert(ds2.is_special());
assert(ds3.is_special());
assert(!ds4.is_special());
assert(!ds5.is_special());
// 2. 通过字符串构造
date dstr1(from_string("2011/08/09"));
date dstr2(from_string("2011-08-09"));
date dstr3(from_string("2011-Feb-28"));
date dstr4(from_string("2011-February-28"));
date dstr5(from_undelimited_string("20110809"));
// 不常用的字符串
date dstr6(from_us_string("Feb-28-2011")); // 完整的月份单词也可以
date dstr7(from_uk_string("28-Feb-2011")); // 完整的月份单词也可以
// 3. 通过clock构造
date dc1(day_clock::local_day());
date dc2(day_clock::universal_day());
// 4. 构造时的异常
try
{
// 年, 月, 日超过范围时会抛异常.
date d6(1300, 12, 25);
}
catch (std::exception& e)
{
std::cout << e.what() << std::endl;
}
}
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报
。
打开APP,阅读全文并永久保存
查看更多类似文章
猜你喜欢
类似文章
【热】
打开小程序,算一算2024你的财运
不忍心告诉你的65个社交真相
天呀!涨知识了!终于有人把这些课外常识整理出来了,没有比这个更全
什么才是人情世故?
毛主席最看重的五位秘书,最后都官至何位了第一位,叶子龙,他自幼受
51岁阿姨:78岁母亲“托孤”,等她百年,让我照顾哥哥以后的生活
0098《权力48法则》罗伯特・格林(1)
更多类似文章 >>
生活服务
热点新闻
留言交流
回顶部
联系我们
分享
收藏
点击这里,查看已保存的文章
导长图
关注
一键复制
下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!
联系客服
微信登录中...
请勿关闭此页面
先别划走!
送你5元优惠券,购买VIP限时立减!
5
元
优惠券
优惠券还有
10:00
过期
马上使用
×