Есть ли способ построить случай динамического переключения в C ++. На самом деле значения регистра известны мне только во время выполнения, а число значений регистра также известно только во время выполнения. Причина, по которой я это делаю, заключается в том, что я пытаюсь создать идеальный поиск хеша через этот случай коммутатора во время выполнения. Так, например, у меня есть четыре значения 89, 94, 38, 54, я хочу что-то эквивалентное следующим образом.
switch( x )
{
case 89:
return 0;
case 94:
return 1;
case 38:
return 2;
case 54;
return 3;
}
Однако, это должно быть построено во время выполнения. Конечно, мы можем использовать цикл for и поиск для реализации поиска хеша, но это, конечно, медленнее, чем переключение.