だから私は BOOST.EXTENTIONを使ってモジュールをロードします。各モジュールを説明する特別なファイルがあります。そのファイルから変数を読み取ります。
そのような例:
shared_library m("my_module_name");
// Call a function that returns an int and takes a float parameter.
int result = m.get<int, float>("function_name")(5.0f);
m.close();
私にとっては次のようになります:
shared_library m("my_module_name");
// Call a function that returns an int and takes a float parameter.
int result = m.get<myMap["TYPE_1_IN_STRING_FORM"], myMap["TYPE_2_IN_STRING_FORM"]>("function_name")(5.0f);
m.close();
標準タイプと衣装タイプをマッピングするようなマップを作成するにはどうすればよいですか?
アップデート:
バリアントである可能性があります:
shared_library m("my_module_name");
int result = m.get<boost::variant< int, float, ... other types we want to support >, boost::variant< int, float, ... other types we want to support > >("function_name")(5.0f);
m.close();
半減できますか?必要なすべての型が宣言されている限り、気にしないでしょうか?