0

boost::serialization を使用して非常に単純なシリアル化コードをテストしています。このテストでは、std::string をファイルに書き込むだけです。

問題なくコンパイルできますが、問題は、 << 演算子が呼び出されたときに例外がスローされることです。ファイルは空のままです。

test.exe の 0x1004b370 (msvcr100d.dll) 0x000000000021647a の未処理の例外: 0xC0000005: 0x000000000021647a のアクセス違反

Windows 7 64ビットでvisualc ++ 2010でコンパイルされたboost 1.53ライブラリを使用しています。Intel 12.1 64 ビットでも試しましたが、成功しませんでした。

#include <fstream> 
#include <boost/serialization/string.hpp>
#include <boost/archive/text_oarchive.hpp> 

int main(int argc, char * argv[])
{
    std::string s = "HelloWorld!"; 

    std::ofstream file("archive.txt"); 
    boost::archive::text_oarchive oa(file); 

    oa << s;

    file.close();
}

何か助けはありますか?

4

1 に答える 1