发生了什么事?为什么istream_iterator <unsigned char,unsigned char> throw std :: bad_cast?
#include <iostream>
#include <iterator>
#include <sstream>
int main() {
std::basic_stringbuf<unsigned char> buf;
std::basic_istream<unsigned char> stream(&buf);
// the next line throws std::bad_cast on g++ 4.4
std::istream_iterator<unsigned char, unsigned char> it(stream);
}
我在构造迭代器之前试过stream.write(some_array, sizeof(some_array)
,无济于事。
谢谢。
通过VS8没有任何打嗝,但我不会相信它! – DumbCoder 2010-08-31 14:39:30
也在VS10上(刚测试过)。 – 2010-08-31 14:44:35