title: Is it possible to 'throw away' read value from input stream?
body: <p>I process some data with data in columns like,</p>
  
  <pre><code>1 -0.004002415458937208 0.0035676328502415523
  2 -0.004002415796209478 0.0035676331876702957
  ....
  </code></pre>
  
  <p>I am only interested in the last two values. I usually find it convenient to read the values as:</p>
  
  <pre><code>std::ifstream file(file_name);
  double a, b;
  for (lines) {
      //      | throwing away the first value by reading it to `a`
      file &gt;&gt; a &gt;&gt; a &gt;&gt; b;
      store(a, b);
  }
  </code></pre>
  
  <p>I'm not sure how readable this is for others, and it might be thought of as an error when the structure of the data is not known. <strong>Could I somehow make it look more explicit that I really want to throw away the first read value?</strong> </p>
  
  <p>I wanted something in the line of this, but nothing worked:</p>
  
  <pre><code>file &gt;&gt; double() &gt;&gt; a &gt;&gt; b; // I hoped I could create some r-value kind of thing and discard the data in there
  file &gt;&gt; NULL &gt;&gt; a &gt;&gt; b;
  </code></pre>