2011-12-10 28 views
0

私はブーストシリアライズの基本を学びたいと思っています。だから私はthe tutorialに続き、class Aclass Bclass CA a_;B b_;をプライベートメンバーとして持っています。シリアライズ可能なネストされたクラスを持つクラスのシリアライズ奇妙なコンパイルエラー

ライブでは、それはhereであり、すべての変な怖いコンパイラエラーがあります。私はclass Aclass Bを持った後class Cはシリアライズすることができますどのように、間違って何をした

Error 2 error C2248: 'C::serialize' : cannot access private member declared in class 'C' 
Error 3 error C2248: 'C::serialize' : cannot access private member declared in class 'C'  

:?私のVS2010に私は2つの同じエラーを得ながら、

答えて

3

BCについては、friend class boost::serialization::access;を入力していませんでした。

+0

[here](http://ideone.com/2N1f3)を追加したあと、まだIDEoneでコンパイルされません。なぜなら、このコードがlinuxでコンパイルされないということでしょうか、IDEoneコンパイルで修正する方法はありますか?私のVSで完璧にコンパイルされました、ありがとうございます!!!))) – myWallJSON

+1

@myWallJSON:Ideonのように見えるのはBoostのヘッダだけで、Boost.Serializeのようなコンパイル済みのライブラリはありません。だから、リンカーが不平を言うのです。 – Xeo

関連する問題