Проблема: я некоторое время искал здесь способ перебрать переменные с именами, похожими на variable_1
, variable_2
, ...., variable_n
. По сути, я спрашиваю, есть ли способ сделать это с помощью цикла для достижения variable_i
или, точнее, в моем случае, functionName_i
.
Что мне нужно: я пытаюсь зациклить массив объектов для вызова различных функций, которые имеют последовательные имена и параллельны массиву объектов (например: obj[ i ]->callback_i() )
Что я знаю. Очевидно, что ответ здесь (если бы это были просто переменные) заключается в использовании массива или вектора. Однако мне нужно просто как-то последовательно соединить имена функций, если это возможно.
Возможные обходные пути. Все, о чем я думаю, восходит к созданию массива/вектора указателей на функции. Я мог бы заставить его в конечном итоге работать, если бы у меня действительно не было вариантов, но я просто подумал, что должен спросить из любопытства.
Четкий вопрос. Есть ли способ перебирать функции с последовательными именами, используя переменную int i
как часть имен функций?
Спасибо!
extern "C"
и экспортировать их с помощью__declspec(dllexport)
, а затем загрузить их по имени (используя строковое значение времени выполнения) в указатели функций сGetProcAddress
. Я бы предположил, что вы можете сделать что-то подобное на Linux или Mac, но я не знаю, как это делается. - person Benjamin Lindley   schedule 08.08.2015std::map<std::string, std::function<void()>>
? - person Galik   schedule 08.08.2015