std::literals::chrono_literals::operator""s
Defined in header <chrono> | | |
|---|---|---|
constexpr chrono::seconds operator "" s(unsigned long long secs); | (1) | (since C++14) |
constexpr chrono::duration</*unspecified*/> operator "" s(long double secs); | (2) | (since C++14) |
形成std::chrono::duration文字代表秒。
1%29整数字面值,准确返回std::chrono::seconds(secs)
2%29浮点文字,返回相等于std::chrono::seconds
参数
secs | - | the number of seconds |
|---|
返回值
大std::chrono::duration字面上的。
可能的实施
参数::秒操作符“s%28 unsited长s%29{返回std::秒%28s%29;}conexpr std::crono::工期<long double>运算符“s%28 long Double s%29{返回std::chrono::工期<long double>%28S%29;}
*。
注记
这些运算符在命名空间中声明。std::literals::chrono_literals,两者都是literals和chrono_literals是内联命名空间。可以通过以下方式访问这些操作员using namespace std::literals,,,using namespace std::chrono_literals,和using namespace std::literals::chrono_literals...
此外,在命名空间中std::chrono,指令using namespace literals::chrono_literals;由标准库提供,因此如果程序员使用using namespace std::chrono;要获得对工期类的访问权限,工期文字运算符也会变得可见。
std::string还定义operator""s,以表示类型的文字对象。std::string,但是它是一个字符串文本:10s是十秒钟,但是"10"s是两个字符的字符串。
例
二次
#include <iostream>
#include <chrono>
int main()
{
using namespace std::chrono_literals;
auto halfmin = 30s;
std::cout << "half a minute is " << halfmin.count() << " seconds\n"
<< "a minute and a half is " << (1min + 30s).count() << " seconds\n";
}二次
产出:
二次
half a minute is 30 seconds
a minute and a half is 90 seconds二次
另见
(constructor) | constructs new duration (public member function of std::chrono::duration) |
|---|
© cppreference.com在CreativeCommonsAttribution下授权-ShareAlike未移植许可v3.0。
本文档系腾讯云开发者社区成员共同维护,如有问题请联系 cloudcommunity@tencent.com

