プログラミングのメモ書きです。日記も兼ねてます。
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
std::mapとBoost::serializationのサンプルプログラム書いてる。
…
/usr/local/include/boost/archive/basic_xml_oarchive.hpp: In member function `voi
d boost::archive::basic_xml_oarchive<Archive>::save_override(T&, int) [with T =
TestClass, Archive = boost::archive::xml_oarchive]':
/usr/local/include/boost/archive/detail/interface_oarchive.hpp:64: instantiate
d from `Archive& boost::archive::detail::interface_oarchive<Archive>::operator<<
(T&) [with T = TestClass, Archive = boost::archive::xml_oarchive]'
main.cpp:48: instantiated from here
/usr/local/include/boost/archive/basic_xml_oarchive.hpp:87: error: conversion fr
om `mpl_::failed************boost::serialization::is_wrapper<TestClass>::*******
*****' to non-scalar type `mpl_::assert< false>' requested
/usr/local/include/boost/archive/basic_xml_oarchive.hpp:87: error: enumerator va
lue for `mpl_assertion_in_line_87' not integer constant
こんなエラーが出てきてコンパイルできない…
頭しばらくすっ飛ばして、エラーしてるところ見てみたら、コメントで
「If your program fails to compile here, its most likely due to not specifying an nvp wrapper around the variable to be serialized.」って書いてあった。
Google翻訳によると、「あなたのプログラムが失敗した場合はここをコンパイルするためには、そのほとんどのシリアル化されるには、変数の周りにNVPのラッパーを指定しないことになりそうだ。」ということらしい。なんのこっちゃ?
とりあえず、該当行削除したらコンパイル成功…したけどなんか怖えぇ…
いいのか?これ…
…
/usr/local/include/boost/archive/basic_xml_oarchive.hpp: In member function `voi
d boost::archive::basic_xml_oarchive<Archive>::save_override(T&, int) [with T =
TestClass, Archive = boost::archive::xml_oarchive]':
/usr/local/include/boost/archive/detail/interface_oarchive.hpp:64: instantiate
d from `Archive& boost::archive::detail::interface_oarchive<Archive>::operator<<
(T&) [with T = TestClass, Archive = boost::archive::xml_oarchive]'
main.cpp:48: instantiated from here
/usr/local/include/boost/archive/basic_xml_oarchive.hpp:87: error: conversion fr
om `mpl_::failed************boost::serialization::is_wrapper<TestClass>::*******
*****' to non-scalar type `mpl_::assert< false>' requested
/usr/local/include/boost/archive/basic_xml_oarchive.hpp:87: error: enumerator va
lue for `mpl_assertion_in_line_87' not integer constant
こんなエラーが出てきてコンパイルできない…
頭しばらくすっ飛ばして、エラーしてるところ見てみたら、コメントで
「If your program fails to compile here, its most likely due to not specifying an nvp wrapper around the variable to be serialized.」って書いてあった。
Google翻訳によると、「あなたのプログラムが失敗した場合はここをコンパイルするためには、そのほとんどのシリアル化されるには、変数の周りにNVPのラッパーを指定しないことになりそうだ。」ということらしい。なんのこっちゃ?
とりあえず、該当行削除したらコンパイル成功…したけどなんか怖えぇ…
いいのか?これ…
PR
この記事にコメントする