Расклад байт и битов в структуре с битовыми полями не определен, так что записать можно, но что будет - неизвестно. На одной платформе ещё может будет работать, на разных - нет
Это точная инфа? Не представляю реального С++ компилятора, где это так
если делать сериализацию через отдельные методы структуры, то нужно будет создавать объект самой структуры. В поля записывать данные. Затем при сериализации переносить это в буфер. Так?
если делать сериализацию через отдельные методы структуры, то нужно будет создавать объект самой структуры. В поля записывать данные. Затем при сериализации переносить это в буфер. Так?
метод 1: char buffer[X]; auto packet = static_cast<MyStruct_t *>(buffer); ..... метод 2 (я правильно понял что ты предлагаешь делать так?): char buffer[X]; MyStruct packet; ..... packet.serialize(buffer);
метод 1: char buffer[X]; auto packet = static_cast<MyStruct_t *>(buffer); ..... метод 2 (я правильно понял что ты предлагаешь делать так?): char buffer[X]; MyStruct packet; ..... packet.serialize(buffer);
Как бы да, но сериализовать можно прямо в поток, сетевой или файловый
иногда бывает нужно еще сохранять данные в кольцевом буфере опять же, для повторной отправки например... Тут сразу мапишь структуру на участок буфера, записываешь все, и идешь дальше.
иногда бывает нужно еще сохранять данные в кольцевом буфере опять же, для повторной отправки например... Тут сразу мапишь структуру на участок буфера, записываешь все, и идешь дальше.
Далеко пойдешь! Ну ладно. Стровстрап тебе судья...