std::literals::chrono_literals::operator""us
出自cppreference.com
| 在標頭 <chrono> 定義
|
||
| |
(1) | (C++14 起) |
| |
(2) | (C++14 起) |
組成表示微秒的 std::chrono::duration 字面量。
1) 整數字面量,準確返回
std::chrono::microseconds(us)。2) 浮點字面量,返回等價於 std::chrono::microseconds 的浮點時長。
參數
| us | - | 微秒數 |
返回值
std::chrono::duration 字面量。
可能的實現
constexpr std::chrono::microseconds operator""us(unsigned long long us)
{
return std::chrono::microseconds(us);
}
constexpr std::chrono::duration<long double, std::micro> operator""us(long double us)
{
return std::chrono::duration<long double, std::micro>(us);
}
|
註解
此運算符在命名空間 std::literals::chrono_literals 聲明,其中 literals 和 chrono_literals 都是內聯命名空間。可以通過以下方式取得對此運算符的訪問:
using namespace std::literalsusing namespace std::chrono_literalsusing namespace std::literals::chrono_literals
另外,在命名空間 std::chrono 中,標準庫提供了 using namespace literals::chrono_literals; 指令,因此程式設計師在使用 using namespace std::chrono; 取得對日期時間庫中的類的訪問時,對應的字面量運算符也會變為可見。
示例
運行此代碼
#include <chrono>
#include <iostream>
int main()
{
using namespace std::chrono_literals;
auto d1 = 250us;
std::chrono::microseconds d2 = 1ms;
std::cout << d1 << " = " << d1.count() << " 微秒\n"
<< 1ms << " = " << d2.count() << " 微秒\n";
}
輸出:
250us = 250 微秒
1ms = 1000 微秒
參閱
| 構造新 duration ( std::chrono::duration<Rep,Period> 的公開成員函數)
|