0
我看看我們如何使用Boost :: Extension BOOST_EXTENSION_TYPE_MAP_FUNCTION
宏。Boost :: extension如何捲曲括號工作,如何自己製作這樣的宏?
例如像this:
BOOST_EXTENSION_TYPE_MAP_FUNCTION
{
std::map<std::string, boost::extensions::factory<service> > &factories(types.get());
factories["file_service"].set<file_service>();
}
BOOST_EXTENSION_TYPE_MAP_FUNCTION
宏在extension.hpp定義。
我不知道這個宏是如何理解「花括號」中的內容以及如何將這個宏擴展爲某種類似「Hello擴展宏」的東西?
宏不理解任何東西(?)它只是被替換 - 所以實際上(如果你忽略調用約定的東西)變成void void boost_extension_exported_type_map_function(boost :: extensions :: type_map&types)'(我已經省略了'extern「C」'位),即一個函數... – Nim