最終更新日時(UTC): 2025年07月11日 17時16分44秒
Koichi Murase が更新

履歴 編集

function
<chrono>

# std::chrono_literals::usリテラル(C++14)

    namespace std {

    inline namespace literals {
    inline namespace chrono_literals {
      constexpr chrono::microseconds
        operator "" us(unsigned long long x);        // (1)

      constexpr chrono::duration<unspecified, micro>
        operator "" us(long double x);               // (2)
    }}

    namespace chrono {
    using namespace literals::chrono_literals;
    } // namespace chrono

    }  // namespace std

## 概要

マイクロ秒単位の値を表す`duration`クラスのリテラル。

- (1) : 整数型のマイクロ秒リテラル
- (2) : 浮動小数点型のマイクロ秒リテラル

## 戻り値

- (1) : `chrono::microseconds(x)`
- (2) : `chrono::duration<unspecified, micro>(x)`

## 例

    #include <iostream>
    #include <chrono>

    int main()
    {
      using namespace std::literals::chrono_literals;

      auto microseconds_i = 3us;   // 整数型の3マイクロ秒
      auto microseconds_f = 3.1us; // 浮動小数点型の3.1マイクロ秒

      std::cout << microseconds_i.count() << std::endl;
      std::cout << microseconds_f.count() << std::endl;
    }

### 出力

    3
    3.1

## バージョン

### 言語

- C++14

### 処理系

- Clang: 3.4 ✅
- GCC: 4.9.0 ✅
- ICC: ??
- Visual C++: 2015 ✅

## 参照

- N3642 User-defined Literals for Standard Library Types (part 1 - version 4)
- LWG Issue 2278. User-defined literals for Standard Library types