boost-any

    5

    2答えて

    オブジェクトへの参照をboost::anyオブジェクトに保存します。どのようにboost :: anyオブジェクトを初期化するのですか?私はstd::ref()を試しましたが、boost::anyはstd::reference_wrapper<>で初期化されます。例えば、 #include <boost/any.hpp> #include <cxxabi.h> #include <iostre

    1

    1答えて

    私はstd::map<const char*, boost::any>を使用してライブラリの設定を保存しています。各設定は基本的な値の種類を1つしか使用しないため、構成呼び出し時にset()またはそれに類するものの間にこれを強制したいと思います。設定は、正しいタイプのデフォルト値で初期化されます。ここで がうまくいけば、私が達成しようとしているかを示し、いくつかの擬似コードです: using na

    5

    1答えて

    次のような呼び出しが失敗したときにどのキーが関連していたかを知る方法はありますか? boost::program_options::variables_map vm; ... int foo_bar = vm["some_key"].as<int>(); キーがマップから欠落している、またはint型に変換可能でない場合、私はむしろ、情報価値bad_any_castを取得し、私は次のいずれか

    4

    3答えて

    ポインタを格納するのにboost::anyを使用していて、多態性データ型を抽出する方法が であるかどうか疑問に思っていました。 ここでは理想的には私がやりたいことの単純な例ですが、現在は機能しません。 struct A {}; struct B : A {}; int main() { boost::any a; a = new B(); boost::an

    0

    2答えて

    メインEXEはdllをロードします。単純なboost :: anyを返すdll関数を呼び出します。 boost :: anyが、FreeLibraryアプリがデストラクタでクラッシュした後に削除された場合。大丈夫です。しかし、私はこのコードがr2デストラクタでもクラッシュする理由を理解できません。r2はmainで作成し、deleteはdllコードを必要としません。 FreeLibraryの後にbo

    19

    4答えて

    は、ほぼ完全std::functionに移動しても同じことがboost::shared_ptr であるしかし、私はstd::anyを見つけることができませんか? 名前が変更されたのは何ですか?

    1

    3答えて

    私はboost :: anyのベクトルを持ち、このベクトルの 'any'のインデックスを探したいと思います。このような 何か: template <class T> bool IsValueEqualTo(any aniInVector, any value) { if (aniInVector.empty() && value.empty()) return true;