C ++ & Boost: как преобразовать динамический набор битов в строку? - PullRequest
0 голосов
/ 07 апреля 2011

Итак, документация гласит:

template <typename Char, typename Traits, typename Block, typename Alloc>
basic_ostream<Char, Traits>&
operator<<(basic_ostream<Char, Traits>& os, const dynamic_bitset<Block, Alloc>& b)

Эффекты: Вставляет текстовое представление b в поток os (сначала старший бит).Неофициально вывод такой же, как и

std::basic_string<Char, Traits> s;
boost::to_string(x, s):
os << s;

, чего я совсем не понимаю.

Вот что у меня есть

boost::dynamic_bitset<> bit_value(Config::HASH_WIDTH_IN_BITS, hash_value);
string buffer = bit_value.to_string();

Что не 't работает, потому что динамический набор битов не имеет члена .to_string ();

1 Ответ

6 голосов
/ 07 апреля 2011

to_string - это свободная функция в пространстве имен boost, а не функция-член.

boost::dynamic_bitset<> bit_value(Config::HASH_WIDTH_IN_BITS, hash_value);
string buffer;
to_string(bit_value, buffer);
// here buffer contains the string representation of bit_value.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...