公有成員函式
<iterator>

std::istream_iterator::operator*

reference operator*() const;
解引用迭代器
返回迭代器指向的元素的引用。

內部,函式返回物件儲存的作為其當前元素的那個值。

如果迭代器剛剛從輸入流構造,並且該操作的實現未在構造時從流中提取值,則現在會提取。

如果迭代器是流末尾迭代器,則不應對其執行解引用

引數



返回值

指向迭代器所指元素的常量引用。
成員型別 referenceconst value_type& 的別名,其中 value_type 是運算子提取的元素型別(第一個類模板引數)。

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// istream_iterator example
#include <iostream>     // std::cin, std::cout
#include <iterator>     // std::istream_iterator

int main () {
  double value1, value2;
  std::cout << "Please, insert two values: ";

  std::istream_iterator<double> eos;              // end-of-stream iterator
  std::istream_iterator<double> iit (std::cin);   // stdin iterator

  if (iit!=eos) value1=*iit;

  ++iit;
  if (iit!=eos) value2=*iit;

  std::cout << value1 << "*" << value2 << "=" << (value1*value2) << '\n';

  return 0;
}

資料競爭

訪問物件(某些庫實現也可能修改它)。
返回的引用可用於訪問元素。

異常安全

強保證:如果發生異常,迭代器的可見狀態沒有改變。

另見