boost :: asio :: streambuf с помощью wchar_t - PullRequest
2 голосов
/ 28 ноября 2011

Я пытаюсь сделать следующее с широкими символами:

boost::asio::streambuf io_streambuf_;
std::iostream io_stream(io_streambuf_);

Я пробовал это, но получил кучу ошибок компилятора:

boost::asio::streambuf io_streambuf_;
std::wiostream wio_stream(io_streambuf_);

Я знаю, что streambuf равен <char> как мне то же самое, но с wchar_t буферизованным потоком?

1 Ответ

0 голосов
/ 29 ноября 2011

boost :: asio :: streambuf - это определение типа для boost :: asio :: basic_streambuf.Реализация шаблона по умолчанию для basic_streambuf:

template<typename Allocator = std::allocator<char>>
class basic_streambuf :
  noncopyable

Итак, вам нужно объявить:

boost::asio::basic_streambuf<std::allocator<wchar_t>> io_streambuf_;
std::wiostream wio_stream(io_streambuf_);

Примечание: я не проверял это, но это ядровашей проблемы.

...