我想/使用Boost下面的矢量對象的值(不是指針)反序列化序列化:矢量的指針。 BOOST系列化
std :: vector <A*> m_vector;
要序列我使用下面的代碼:
int nItems = m_vector.size();
ar & nItems;
std::for_each(m_vector.begin(), m_vector.end(), [&ar](A* pItem) {
ar & *pItem;
});
而對於反序列化:
int nItems;
ar & nItems;
for (int i = 0; i < nItems; ++i) {
A* pItem;
ar & *pItem; ///////////// Run-Time Check Failure #3
m_vector.push_back(pItem);
}
但是當我運行該程序,我得到以下錯誤:
Run-Time Check Failure # 3 - The variable 'pItem' is Being Used without Being initialized.
我在做什麼錯?
謝謝。
謝謝您的幫助。 –
@JoanCarles - 如果它幫助你解決問題,請接受答案 – Attila