我理解數據結構對齊的理論,並用這個理論來實現序列化。 但是,我很難開始真正的代碼。 有人可以給我一個簡單的例子來說明這是如何工作的?在C++中實現序列化的數據結構對齊
比方說:
Class A {
private:
int a;
char b;
double c;
char d;
char e;
public:
void serialize(char * str);
};
如何實現序列化方法來存儲數據對齊一個?我應該重新排序數據結構並填充它嗎?或...
內存中數據對齊和序列化是兩個正交的方面。事實上,一旦數據被序列化爲一個字節流,對齊就不再是一個問題。 – mavam 2012-04-08 19:19:11
@MatthiasVallentin請在有人提議使用'memcpy'或某些類似功能之前將您的評論轉換爲答案。 – Andre 2012-04-08 19:32:09
您可能會檢查Google協議緩衝區:http://code.google.com/p/protobuf/,而不是自己的序列化,這將爲您處理很多細節,「正確的方式」。 – 2012-04-08 21:08:14