最終更新日時(UTC):
が更新

履歴 編集

function
<iterator>

std::reverse_iterator::operator*

reference operator*() const;           // C++03
constexpr reference operator*() const; // C++17

概要

イテレータを間接参照する。

効果

  • C++11

deref_tmp = current;
--deref_tmp;
return *deref_tmp;

deref_tmpは、ぶら下がり参照を避けるために関数内のローカル変数ではなく、メンバ変数として保持される。

  • C++14

Iterator tmp = current;
return *--tmp;

#include <iostream>
#include <vector>
#include <iterator>

int main()
{
  std::vector<int> v = {1, 2, 3};

  std::reverse_iterator<decltype(v)::iterator> it(v.end());

  int& result = *it;

  std::cout << result << std::endl;
}

出力

3

参照