
19 Feb
2013
19 Feb
'13
12:23 a.m.
I think Phil means rather than do the read in operator++, just set a flag in operator++ that the read should be done, and actually do it in operator* (which then clears the flag). Then if someone calls operator++ again without calling operator* (which you can detect by the flag being set in operator++), you can do a skip in operator++, and thus avoid decoding the line you didn't need.
Interesting idea. I'll update the code.
Actually that doesn't work. How would the user signal to just skip a scanline? I cannot add a parameter to operator++. scanline_read_iterator< Reader >& operator++( bool read_scanline = true ) { //to something } Christian