Skip to content

Latest commit

 

History

History
59 lines (45 loc) · 1.13 KB

File metadata and controls

59 lines (45 loc) · 1.13 KB

end

  • optional[meta header]
  • std[meta namespace]
  • optional[meta class]
  • function[meta id-type]
  • cpp26[meta cpp]
constexpr iterator end() noexcept; // (1)
constexpr const_iterator end() const noexcept; // (2)

概要

optionalをrangeとした時の末尾要素の次を指すイテレータを取得する。

効果

begin() + has_value() を返す。

#include <iostream>
#include <iterator>
#include <optional>

int main()
{
  std::optional<int> p = 1;
  std::cout << std::distance(p.begin(), p.end()) << std::endl;

  p = std::nullopt;
  std::cout << std::distance(p.begin(), p.end()) << std::endl;
}
  • end()[color ff0000]
  • begin()[link begin.md]
  • std::distance[link /reference/iterator/distance.md]

出力

1
0

バージョン

言語

  • C++26

処理系

参照