Wpis z mikrobloga

#programowanie #programista15k
Język C. Mam zbiór funkcji, każdą z inną liczbą i różnymi typami argumentów:

int funkcja1(int a);
int funkcja2(int a, int b);
int funkcja3(float z);

itp.
Chciałbym zrobić "nadrzędną" funkcję, która wewnątrz wywoła wybraną funkcję powyżej i przekaże jej argumenty.
Coś w stylu [pseudokod]:

void motherOfFunctions(int * fun(void *, ...), int foo){
fun(args);
somethingElse();}

Czy da się coś takiego zrobić?
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@that_ugly_dude: nic z tych rzeczy - po prostu ta strona zawiera w sobie CPP i C.

CPP ma zasadniczo nieco lepsze(?) mechanizmy, bind, std::function i co tam jeszcze. C umie przyjmować zmienną liczbę argumentów, ale generalnie nie jest to imho często wykorzystywane, mam wrażenie że częściej widziałem makro które, wybaczcie anglicyzm - ekspandowało się do N możliwych parametrów wejściowych. Z drugiej strony może to z racji pracy częściej z kodem
  • Odpowiedz