LINUX.ORG.RU

История изменений

Исправление SaBo, (текущая версия) :

А чем мне va_list поможет? Не понимаю...

Я же не могу сделать как-то так:

typedef void* (*va_fptr)(va_list);

int func3(int a, int b) {
    return a * b;
}

void *invoke(va_fptr &fptr, ...) {
  va_list args;
  ...
  va_fptr f = (va_fptr)func3;
  return f(args);
}

Мне нужно как-то va_list передать в функцию, которая ничего о va_list не знает, но при этом принимает содержащиеся в ней аргументы.

Исходная версия SaBo, :

А чем мне va_list поможет? Не понимаю...

Я же не могу сделать как-то так:

typedef void* (*va_fptr)(va_list);

int func3(int a, int b) {
    return a * b;
}

void *invoke(va_fptr &fptr, ...) {
  va_list args;
  ...
  va_fptr f = (va_fptr)func3;
  return f(args);
}