std::bitset
имеет метод to_string()
для сериализации в качестве строки char
на основе 1
и 0
s. Очевидно, что для каждого бита в битете используется один 8 бит char
, что делает сериализованное представление в 8 раз дольше, чем необходимо.
Я хочу сохранить битовый набор в двоичном представлении, чтобы сэкономить место. Метод to_ulong()
имеет значение только тогда, когда в моем битете есть меньше 32 бит. У меня сотни.
Я не уверен, что хочу использовать memcpy()
/std::copy()
для самого объекта (адреса), поскольку это предполагает, что объект является POD.
API, похоже, не предоставляет дескриптор представления внутреннего массива, из которого я мог бы принять адрес.
Мне также нужна опция десериализации битового набора из двоичного представления.
Как я могу это сделать?