打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
【Boost】date构造方法
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. 例子

  1. void test_dt_construct()  
  2. {  
  3.     using namespace boost::gregorian;  
  4.   
  5.     // 1. 常规的构造函数有如下几种:  
  6.     date d0;  
  7.     date d1(2008, 8, 9);    // 最常用的构造方法  
  8.     date d2(d1);            // 复制构造  
  9.     date ds1(neg_infin);  
  10.     date ds2(pos_infin);  
  11.     date ds3(not_a_date_time);  
  12.     date ds4(max_date_time);    // 9999-Dec-31  
  13.     date ds5(min_date_time);    // 1400-Jan-01  
  14.   
  15.     assert(d0.is_not_a_date());  
  16.     assert(d0.is_special());  
  17.     assert(ds1.is_special());  
  18.     assert(ds2.is_special());  
  19.     assert(ds3.is_special());  
  20.     assert(!ds4.is_special());  
  21.     assert(!ds5.is_special());  
  22.   
  23.     // 2. 通过字符串构造  
  24.     date dstr1(from_string("2011/08/09"));  
  25.     date dstr2(from_string("2011-08-09"));  
  26.     date dstr3(from_string("2011-Feb-28"));  
  27.     date dstr4(from_string("2011-February-28"));  
  28.     date dstr5(from_undelimited_string("20110809"));  
  29.   
  30.     // 不常用的字符串  
  31.     date dstr6(from_us_string("Feb-28-2011"));  // 完整的月份单词也可以  
  32.     date dstr7(from_uk_string("28-Feb-2011"));  // 完整的月份单词也可以  
  33.   
  34.     // 3. 通过clock构造  
  35.     date dc1(day_clock::local_day());  
  36.     date dc2(day_clock::universal_day());  
  37.   
  38.     // 4. 构造时的异常  
  39.     try  
  40.     {     
  41.         // 年, 月, 日超过范围时会抛异常.  
  42.         date d6(1300, 12, 25);  
  43.     }  
  44.     catch (std::exception& e)  
  45.     {  
  46.         std::cout << e.what() << std::endl;  
  47.     }  
  48. }  

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
不忍心告诉你的65个社交真相
天呀!涨知识了!终于有人把这些课外常识整理出来了,没有比这个更全
什么才是人情世故?
毛主席最看重的五位秘书,最后都官至何位了第一位,叶子龙,他自幼受
51岁阿姨:78岁母亲“托孤”,等她百年,让我照顾哥哥以后的生活
0098《权力48法则》罗伯特・格林(1)
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服