$include_dir="/home/hyper-archives/boost-users/include"; include("$include_dir/msg-header.inc") ?>
Subject: Re: [Boost-users] boost::zip_iterator does not work with std::istreambuf_iterator
From: Krzysztof Żelechowski (giecrilj_at_[hidden])
Date: 2011-09-04 15:26:52
Dave Abrahams wrote:
> 
> on Sat Sep 03 2011, Krzysztof Żelechowski <giecrilj-AT-stegny.2a.pl>
> wrote:
> 
>>   1. boost::zip_iterator requires a readable iterator.
>>   2. std::istreambuf_iterator is a readable iterator.
>>   3. boost::zip_iterator cannot dereference std::istream_iterator because
>> std::istreambuf_iterator returns by value while boost::zip_iterator
>> returns by reference; the exact error message is
>>   invalid initialization of non-const reference of type âchar&â from an
>> rvalue of type âstd::istreambuf_iterator<char, std::char_traits<char>
>>>::char_typeâ
>>
>> Contradiction?  Am I missing anything?
> 
> You're probably not missing anything.  I think the docs are wrong.
> 
I would rather prefer if you declared that the implementation is wrong...
I have written an alternative implementation named iterator_pair that does 
not have this limitation (although it is probably not as cool as 
zip_iterator).