Я на C++ 03, и я только начал подходить к C++.использование stringstream в качестве значения по умолчанию внутри встроенной функции
я хочу сделать функцию, установить некоторые свойства на струнный потока и вернуть его (или mayebe передавая его по ссылке)
inline stringstream get_fixed_stream(stringstream ss=stringstream("")) {
ss.precision(4);
ss.setf(ios::fixed);
return ss;
}
так, если я называю:
stringstream ss = get_fixed_stream()
я Получать новую strinstring, если я называть
соиЬ = get_fixed_stream (COUT)
в точность и setf устанавливаются в cout.
я получаю эту ошибку:
/usr/include/c++/4.4/streambuf:770: error: ‘std::basic_streambuf<_CharT, _Traits>::basic_streambuf(const std::basic_streambuf<_CharT, _Traits>&) [with _CharT = char, _Traits = std::char_traits<char>]’ is private
/usr/include/c++/4.4/iosfwd:63: error: within this context
Вы пытаетесь вернуть поток по значению. Это не сработает, потоки не копируются. Это то, что сообщение об ошибке сообщает вам: класс-экземпляр stream-constructor является закрытым. – jrok