Boost — сериализовать строку с кодировкой TLV

Можно ли сериализовать строку с кодировкой TLV с использованием boost? Или я должен сначала кодировать, а затем просто сериализовать двоичные данные, используя boost? Если да, то как кодировать в TLV?

2

Решение

Архивы двоичной сериализации Boost уже используют что-то похожее на TLV. Ясно, что самым простым делом было бы просто придерживайтесь значения по умолчанию сериализация для строк.

Однако вы можете определить пользовательскую сериализацию для своих пользовательских типов.

С помощью BOOST_STRONG_TYPEDEF вы можете создать строгий «пользовательский» typedef вокруг ваших строковых значений TLV, и таким образом вы можете решить, как сериализовать строки (например, для этой ситуации может быть достаточно сериализовать необработанные данные в виде массива байтов. Вы можете иметь посмотри на boost::serialization::make_array<T>() для отправной точки

1

Другие решения


По вопросам рекламы [email protected]