要提高脚本引擎的效率,请使用以字符串为键、函数指针为的 STL 映射与传统的“if..else if”方法相比,values 被证明是有利的。该解决方案有几个好处:
实现:
<code class="cpp">typedef std::function<void()> ScriptFunction; typedef std::unordered_map<std::string, ScriptFunction> script_map; // ... script_map m; m.emplace("blah", &some_function); // ... void call_script(const std::string& pFunction) { auto iter = m.find(pFunction); if (iter == m.end()) { // not found } iter->second(); }</code>
This方法可确保脚本引擎中的函数调用更快、更高效。
以上是STL映射如何提高脚本引擎效率?的详细内容。更多信息请关注PHP中文网其他相关文章!