`

boost库中获取当前时间的ptime的方法

 
阅读更多

boost库作为c++中非常优秀的库,得到了非常广泛的应用,其配有相应的文档,可以做学习之用。但是,其文档较为简略,在使用ptime时,为了获得当前时间的ptime变量,略有收获,随写文章记录之。

 

ptime是一个很方便强大的类,其中特性之一就是可以用多种不同的方式来获得一个ptime对象,boost的文档中给出了如下代码:

  ptime t(second_clock::local_time());


  ptime t(second_clock::universal_time());


  ptime t(microsec_clock::local_time());

  ptime t(microsec_clock::universal_time());

 这段代码简要的说明了其获取不同精度和事件类型的使用方式。其实,其中的microsec_clock是一个模板类,需要传递一个模板参数,

 template<class time_type>
  class microsec_clock
  {

 在boost中,有一个文件boost\date_time\posix_time\posix_time_types.hpp,其中包含了该time_type的设置,也就是设置为ptime,其中有如下代码:

 

      

#ifdef BOOST_DATE_TIME_HAS_HIGH_PRECISION_CLOCK
  //! A time clock that has a resolution of one microsecond
  /*! \ingroup time_basics
   */
  typedef date_time::microsec_clock<ptime> microsec_clock;
#endif

   所以,在posix_time名字空间使用文档中的代码是没有问题的,但是如果同时在代码中引入了date_time名字空间,将会出现冲突问题,这个时候需要指明其参数。  同时,从这里也能看到,
microsec_clock类也是一个模板,其能用于不同的time类.

 

 

分享到:
评论

相关推荐

    C++-boost库总结.doc

    boost库提供了多种时间和日期相关的类和函数,包括: 1. timer:提供毫秒级的计时精度,内部是通过std::clock取时间的。 2. progress_timer:自动打印某生命周期的执行时间。 3. date_time 库:能很好地表示日期...

    C++boost库总结.doc

    Boost库包含众多模块,如时间日期处理、内存管理、智能指针等,使得C++程序员可以更加高效地开发高质量的软件。 在时间日期处理方面,Boost库提供了一系列丰富的类和工具。例如,`timer`类可以实现毫秒级的计时,...

    boost安装小程序

    Boost库是C++编程语言中的一个开源库集合,它提供了许多高效、跨平台的工具,以帮助开发者解决各种编程问题。Boost库包含了大约150个库,涵盖了算法、智能指针、线程管理、日期时间处理、正则表达式、序列容器、图形...

    C++ boost 时间与日期处理详细介绍

    `boost::posix_time::ptime` 类组合了日期和时间,可以使用 `date()` 和 `time_of_day()` 方法分别获取日期和时间部分。 `date_iterator` 和 `time_iterator` 是迭代器,允许按特定时间单位(如天、周、月、年或秒...

    利用boost获取时间并格式化的方法

    下面,我们将对Boost中获取时间并格式化的方法进行详细的介绍。 获取当前时间 在Boost中,我们可以使用`boost::gregorian::day_clock`类来获取当前的日期,然后使用`to_iso_string`函数将其格式化为ISO格式的字符...

    Boost视频教程

    Boost库的目标是为C++标准库提供补充,并且已经被广泛地应用于各种项目中,包括但不限于操作系统、编译器和浏览器等。 ### 主要功能模块及应用技巧 #### 1. **智能指针(Smart Pointers)** - **知识点**:智能...

    Boost.org日期时间模块.zip

    Boost.org的日期时间模块是C++编程中一个重要的库,它为开发者提供了处理日期和时间的强大工具。这个库尤其在需要进行复杂的日期时间操作、计算和格式化时,显得非常实用。日期时间模块包含了多种类和函数,可以方便...

    ptime:OCaml的POSIX时间

    Ptime在纯OCaml中具有与平台无关的POSIX时间支持。 它提供了一种类型,以皮秒精度表示一个定义良好的POSIX时间戳范围,使用日期时间值进行转换,使用转换以及将其漂亮地打印为人类可读的,与语言环境无关的表示形式...

    boost资料总结 编程

    以下是对Boost中一些关键组件的详细解释: 1. **Typeid**: `typeid`是C++中的一个关键字,用于在运行时获取变量或表达式的类型信息。`typeid(变量).name()`返回的是一个表示类型的字符串,虽然通常这些名字并不直观...

    Python-ptime用于并行分析的IPython魔术

    `%ptime`是IPython中的一个并行性能分析工具,它的主要功能是测量代码在串行和并行模式下运行的时间,并进行比较。这在处理大数据集或需要高效计算的任务时非常有用,因为它可以帮助优化代码,利用多核处理器的并行...

    C语言获取Linux系统精确时间的方法

    在main()函数中,我们调用sysUsecTime()函数来获取当前的时间,并将其格式化后的字符串存储在strusecTime数组中。最后,我们打印出格式化后的时间字符串。 ```c int main(void) { char strusecTime[SIZE_OF_...

    c语言电子时钟程序.zip

    在这个电子时钟程序中,我们会用到`time()`函数来获取当前时间,以及`ctime()`函数将时间戳转换为可读的日期和时间格式。 1. **获取当前时间**:`time()`函数返回自1970年1月1日(UTC)以来的秒数,这是一个时间戳...

    太阳角度计算c语言程序

    该程序主要功能是根据特定的时间点(包括年份、月份、日期等)来计算当天为一年中的第几天,并在此基础上进一步推算太阳在天空中的位置变化。这在气象学、天文学以及一些需要了解太阳位置的应用场景中非常有用。 ##...

    电脑开机时间的计算代码

    为了计算开机时间,我们需要在程序启动时获取当前的`GetTickCount()`值,然后在后续的循环中不断更新这个值,以计算出与当前系统时间的差值。在这个例子中,程序使用了以下步骤: 1. 包含必要的头文件:`&lt;stdlib.h&gt;...

    简易桌面时钟

    "toptime"可能代表"时间显示"的意思,".exe"是Windows操作系统中的可执行文件扩展名,表明这是一个可以直接运行的程序。"power"可能意味着该版本具有增强的功能或者优化的性能。 在使用这款时钟软件时,用户还可以...

    运用隐式反馈的基于时间的推荐系统.pdf

    时间因素不仅体现在用户购买商品的时间(PTime),还体现在商品上架的时间(LTime)。近时的购买行为更能体现用户的即时偏好,而新上架的商品通常更能吸引用户的注意力。 文中提出了一种评分函数 W,该函数综合考虑...

    codesys中TP功能块(timer)共1页.pdf.z

    输入通常用于启动或停止定时器,输出则反映定时器的状态,参数则包括预设时间(PTime)和当前时间(CTime)。 - **工作原理**:当输入信号接通时,定时器开始计时,达到预设时间后,输出信号会被激活,直到输入信号...

Global site tag (gtag.js) - Google Analytics