я думал так to_string
был просто шаблонизирован и использован stringstream
под капотом.
Разве это не так?
Я хочу быть в состоянии сделать это:
class foo{};
ostream& operator<<(ostream& os, const foo& /*bar*/){
os << "foo";
return os;
}
int main() {
foo bar;
string tsTest = to_string(bar);
return 0;
}
Но очевидно, что это не работает, потому что to_string
не шаблонизируется.
Нет, нанизывать не для любого типа. Существуют только перегрузки для примитивных стандартных типов. Это не замена boost::lexical_cast
к несчастью.