C++ for-range loop
<p>I was playing with range loops, eg:</p>

<pre><code>for (auto i : range) {
</code></pre>

<p>which is equivalent to</p>

<pre><code>auto it = range.begin();
auto i = *it;
</code></pre>

<p>but what i want is this:</p>

<pre><code>for (auto it : range) {
    *it; // the it var is not derefernced by range loop
</code></pre>

<p>is there a way to accomplish this?
maybe something like:</p>

<pre><code>for (auto it : make_range(range)) {
    *it; // the it var is not derefernced by range loop
</code></pre>

<p>....</p>

<p>One solution I found so far is using boost::irange, eg:</p>

<pre><code>for (auto it : irange(range.begin(), range.end())) {
</code></pre>
