class mystream : public std::stringstream
{
public:
void write_something()
{
this << "something";
}
};
Это приводит к следующим двум ошибкам компиляции на VC ++ 10:
error C2297: '<<' : illegal, right operand has type 'const char [10]'
error C2296: '<<' : illegal, left operand has type 'mystream *const '
Судя по второму, это потому, что то, на что указывает this
, изменить нельзя, но оператор << делает (или, по крайней мере, объявляет так, как если бы он это делал). Правильно? </strike>
Есть ли какой-нибудь другой способ использовать операторы <<
и >>
в this
?