Есть приложение, которое грузит плагины. При инициализации плагина оно вызывает из него функцию, посредством которой оно заполняет массив структур с описаниями экспортируемыми из плагина функциями. В структуре есть указатель на экспортируемую функцию и информация о количестве/типе ее параметров. Мне нужно создавать этот массив динамически, чтобы можно было использовать в dll любое количество функций с любым количеством параметров. Вопрос — как это сделать. Пока единственная идея — использовать в dll/плагине экспортируемые функции с переменным числом аргументов, например так:
extern "C" __declspec(dllexport)MyFunc(...)
{
va_list vl;
va_start(vl,amount);
for (i=0;i<double_arg_count;i++)
{
double val=va_arg(vl,double);
}
for (i=0;i<int_arg_count;i++)
{
int val=va_arg(vl,double);
}
va_end(vl);
}
Так будет работать?