std::chrono::duration

来自cppreference.com
< cpp‎ | chrono


 
 
实用工具库
类型的支持 (basic types, RTTI, type traits)
动态内存管理
错误处理
程序实用工具
可变参数函数
日期和时间
函数对象
initializer_list(C++11)
bitset
hash(C++11)
关系运算符
原文:
Relational operators
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
rel_ops::operator!=
rel_ops::operator>
rel_ops::operator<=
rel_ops::operator>=
双和元组
原文:
Pairs and tuples
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
pair
tuple(C++11)
piecewise_construct_t(C++11)
piecewise_construct(C++11)
掉期,远期和移动
原文:
Swap, forward and move
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
swap
forward(C++11)
move(C++11)
move_if_noexcept(C++11)
declval(C++11)
 
 
std::chrono::duration
成员函数
原文:
Member functions
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
duration::duration
duration::operator=
duration::count
duration::zero
duration::min
duration::max
duration::operator+
duration::operator-
duration::operator++
duration::operator--
duration::operator+=
duration::operator-=
duration::operator*=
duration::operator/=
duration::operator%=
非成员函数
原文:
Non-member functions
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
common_type
operator+
operator-
operator*
operator/
operator%
operator==
operator!=
operator<
operator<=
operator>
operator>=
duration_cast
Helper类
原文:
Helper classes
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
treat_as_floating_point
duration_values
 
在头文件 <chrono> 中定义
template<

    class Rep,
    class Period = std::ratio<1>

> class duration;
(C++11 起)
类模板 std::chrono::duration 表示一个时间间隔。
原文:
Class template std::chrono::duration represents a time interval.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

它包含了类型为Rep的时间计数和时间周期。时间周期是编译时的有理数常量,表示一个计数到另一个计数之间的秒数。
原文:
It consists of a count of ticks of type Rep and a tick period, where the tick period is a compile-time rational constant representing the number of seconds from one tick to the next.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

duration中存储的唯一数据是类型为Rep的时间计数。如果Rep是浮点值,duration可以将计数表示为分数。Period作为时间间隔类型的一部分,并且只在在不同时间间隔之间转换时使用。
原文:
The only data stored in a duration is a tick count of type Rep. If Rep is floating point, then the duration can represent fractions of ticks. Period is included as part of the duration's type, and is only used when converting between different durations.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

目录

[编辑] 成员类型

成员类型
原文:
Member type
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
定义
rep Rep, 用来表示时间计数的算数类型
period Period, std::ratio类型的值,用来表示时间周期(例如,每个计数为一秒)

[编辑] 成员函数

构造新的时间间隔
原文:
constructs new duration
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(公共成员函数) [edit]
为内容赋值
原文:
assigns the contents
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(公共成员函数) [edit]
返回时间计数值
原文:
returns the count of ticks
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(公共成员函数) [edit]
[静态的]</div></div>
返回值为零的特殊时间间隔
(公共静态成员函数) [edit]
[静态的]</div></div>
返回时间间隔的最小值
原文:
returns the special duration value min
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(公共静态成员函数) [edit]
[静态的]</div></div>
返回时间间隔的最大值
原文:
returns the special duration value max
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(公共静态成员函数) [edit]
实现一元加和一元减
原文:
implements unary + and unary -
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(公共成员函数) [edit]
自增或自减时间计数
原文:
increments or decrements the tick count
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(公共成员函数) [edit]
实现时间间隔之间的复合赋值
原文:
implements compound assignment between two durations
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(公共成员函数) [edit]

[编辑] 非成员函数

特化的std::common_type特征
原文:
specializes the std::common_type trait
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(类模板特化) [edit]
以时间间隔为参数进行算术运算
原文:
implements arithmetic operations with durations as arguments
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(函数模板) [edit]
比较两个时间间隔
原文:
compares two durations
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(函数模板) [edit]
将具有不同时间周期的一个时间间隔转换到另一个
原文:
converts a duration to another, with a different tick interval
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(函数模板) [edit]
以向下取整的方式,将一个时间间隔转换为另一个
(函数模板) [edit]
以向上取整的方式,将一个时间间隔转换为另一个
(函数模板) [edit]
converts a duration to another, rounding to nearest, ties to even
(函数模板) [edit]
获取时间间隔的绝对值
(函数模板) [edit]

[编辑] 辅助类型

类型
原文:
Type
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
定义
std::chrono::nanoseconds std::nano为周期的时间间隔类型
std::chrono::microseconds std::micro为周期的时间间隔类型
std::chrono::milliseconds std::milli为周期的时间间隔类型
std::chrono::seconds std::ratio<1>为周期的时间间隔类型
std::chrono::minutes std::ratio<60>为周期的时间间隔类型
std::chrono::hours std::ratio<3600>为周期的时间间隔类型

[编辑] 辅助类

表示一个时间间隔可以转换为不同时间周期的值
(类模板)
构造给定类型的时间计数的零值、最小值和最大值
(类模板)

[编辑] 字面值

定义于 std::literals::chrono_literals 名字空间
(C++14)
表示小时的 std::chrono::duration 字面值
(函数) [edit]
(C++14)
表示分钟的 std::chrono::duration 字面值
(函数) [edit]
(C++14)
表示秒的 std::chrono::duration 字面值
(函数) [edit]
(C++14)
表示毫秒的 std::chrono::duration 字面值
(函数) [edit]
(C++14)
表示微秒的 std::chrono::duration 字面值
(函数) [edit]
(C++14)
表示纳秒的 std::chrono::duration 字面值
(函数) [edit]

[编辑] 示例

这个例子展示了如何自定义时间间隔类型,以及在类型之间转换:

#include <iostream>
#include <chrono>
 
int main()
{
    typedef std::chrono::duration<int, std::ratio<1, 100000000>> shakes;
    typedef std::chrono::duration<int, std::centi> jiffies;
    typedef std::chrono::duration<float, std::ratio<12096,10000>> microfortnights;
    typedef std::chrono::duration<float, std::ratio<3155,1000>> nanocenturies;
 
    std::chrono::seconds sec(1);
 
    std::cout << "1 second is:\n";
 
    std::cout << std::chrono::duration_cast<shakes>(sec).count()
              << " shakes\n";
    std::cout << std::chrono::duration_cast<jiffies>(sec).count()
              << " jiffies\n";
    std::cout << std::chrono::duration_cast<microfortnights>(sec).count()
              << " microfortnights\n";
    std::cout << std::chrono::duration_cast<nanocenturies>(sec).count()
              << " nanocenturies\n";
}

输出:

1 second is:
100000000 shakes
100 jiffies
0.82672 microfortnights
0.316957 nanocenturies

来自“http://zh.cppreference.com/mwiki/index.php?title=cpp/chrono/duration&oldid=39895