使用boost序列化将类对象转换为vector <unsigned char =“”>

时间:2017-11-27 09:45:24

标签: c++ stdvector boost-serialization

我指的是:https://theboostcpplibraries.com/boost.serialization-class-hierarchies

我想将我班级的对象序列化为<div class="form-group"> <label>{{Form::label('party_name',trans('admin.calendar.fields.party_name'),['class' => 'col-md-4 control-label'])}}</label>{{Form::text('party_name',old('party_name', isset($calendar) ? $calendar->party_name : ''),['class' => 'form-control'])}}

std::vector<unsigned char>

然后反序列化回到那个班级。

但我不完全理解上述URL中的实现。有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

在这种情况下,最好看here。 博客通常是由处于学习阶段的人编写的,所以在大多数情况下他们不值得信任(我不是说这种情况,但你应该对你不认识的人撰写的博客信任有限。)

这里的全部技巧是模板方法void serialize(Archive & ar, const unsigned int version)。 因为它是一个模板,一旦用于序列化和一次反序列化数据。

由于代码同时进行写入和读取,因此无法使用流操作符<< >>。图书馆的作者决定使用位智能和运算符&来表示它可以进行读写。 它看起来像引用的定义很奇怪,但是在左侧注意你有方法的参数,或者右边你有一个字段名称。