我正在研究C++中的序列化。數據結構的C++序列化
ifstream_obj.read(reinterpret_cast<char *>(&obj), sizeof(obj)); // read
// or
ofstream_obj.write(reinterpret_cast<char *>(&obj), sizeof(obj)); // write
// ?
和,哪一個是更好地使用:如果與像什麼的boost::serialization
優勢/區別?
我正在研究C++中的序列化。數據結構的C++序列化
ifstream_obj.read(reinterpret_cast<char *>(&obj), sizeof(obj)); // read
// or
ofstream_obj.write(reinterpret_cast<char *>(&obj), sizeof(obj)); // write
// ?
和,哪一個是更好地使用:如果與像什麼的boost::serialization
優勢/區別?
升壓序列化的一大優點是:
最後,它增加了(a)抽象層,使事情變得更少錯誤傾向。當然,你可以爲你的建議的序列化方法做同樣的事情,而不會有太多問題。
這裏有一個答案,做那種系列化你的建議,但安全:
注意,升壓序列化是充分認識按位序列化類型的,你可以告訴它你自己太:
您的示例僅適用於持有(非POD)或引用(例如,POD)對象的對象。通過指針)其他對象 –
這高度依賴於數據結構。 – NathanOliver
從本質上講,這些樣本是作爲類 –