首先,我想告诉你,我的总体/主要目标是使用它们的函数名称(字符串)作为参数来执行某些函数,我定义了一个函数如下:(我想为我生成的每个字符串数据生成一个唯一的数字作为函数的参数插入)
#include <iostream>
#include <string>
#include <hash_set>
using namespace std;
void Func_Execution(string &s){
int k=stdext::hash_value(s);
#if(_MSC_VER ==1500)
switch (k)
{
case -336300864: GETBATTERYCALLSIGNS();
break;
case -1859542241:GETGUNIDS();
break;
case 323320073:Foo(); // here int k=323320073 for string s="Foo"
break;
case 478877555:Bar();
break;
defalut :Exit();
break;
}
#endif
}
这里我调用 Func_Execution 函数如下:
void main(){
string s="Foo";
Func_Execution(s);
}
我想知道是否有任何有效的(考虑性能/耗时)和有效的机制来为某些字符串(字符模式)生成唯一的数值而不是使用 stdext::hash_value() 函数?(另请注意我想实现开关盒也是)