最終更新日時: 2026年02月08日 18時00分28秒 (JST)
yoh が更新

履歴 編集

concept
<ranges>

# has-arrow(C++20)

    template<class I>
      concept has-arrow = // 説明専用コンセプト
        input_iterator<I> && (is_pointer_v<I> || requires(I i) { i.operator->(); });

## 概要

`has-arrow`は、型`I`について`std::input_iterator`を満たす上で、アロー演算子が使用可能であることを表す説明専用コンセプトである。

C++20 のイテレータ定義であるコンセプトたちではアロー演算子を提供することを要求していないため、別途用意されていると考えられる。

## バージョン

### 言語

- C++20

### 処理系

- Clang: ??
- GCC: ??
- ICC: ??
- Visual C++: ??