質問

このコード:

#include <fstream>

#include <boost/archive/text_oarchive.hpp>

using namespace std;

int main()
{
    std::ofstream ofs("c:\test");
    boost::archive::text_oarchive oa(ofs);
}

もしかしたら、独自のレンダリングメカニズムの例外をランタイム実行時の向上にアーカイブ:

boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::archive::archive_exception> >
役に立ちましたか?

解決

以下の行はエラー:

 std::ofstream ofs("c:\test");

コンパイラのう吐き出警告の少ないファイルと呼ばれた jest;が '\t' --の脱出を挿入するためのタブは、エラーがキャッチされたと見なされ.このファイルを作成します。そのまま検証できること:

if (ofs.good()) { ... }

しかし、ファイルを作成せずに継続してご利用いただけ有効な反復子を boost::archive::text_oarchive をスローします。

してみてください:

std::ofstream ofs("c:\\test");
//                  --^ (note the extra backslash)
if (ofs.good()) {
    boost::archive::text_oarchive oa(ofs);
    // ...
}

武器agiは、dexで下がらないboxerぐ!

PS: 最終りませんでした私からすればかりにくい

using namespace std;

その

ofstream ofs("c:\\test");

ありませんね---。のコースではエラーではありません突破 ofstream, ですが、しばられない最高のコーディングスタイル.その後は、まだ利用 using namespace 悪いでいらっしゃるのでは?

PPSありがとうございます-- sharptooth のために思うこと \t 取得しいタブ!

他のヒント

あなたは根本的な原因が何であるかを確認するために、例外をキャッチして、そのexception_codeを検討する必要があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top