Ich verwende bei mir in den Libs "simpleThreads" und "LcdMenuLib" auch Arrays von Funktionen. Dazu erstell ich mir einen neuen Typen mit Typedef:
#ifndef TYPEDEF_FUNCPTR
#define TYPEDEF_FUNCPTR
typedef void (* FuncPtr) ();
#endif
#define cnt_func 2
void func_1()
{
Serial.println("func_1");
}
void func_2()
{
Serial.println("func_2");
}
FuncPtr ary_function[cnt_func];
ary_function[0] = func_1;
ary_function[1] = func_2;
void setup()
{
Serial.begin(9600);
}
void loop()
{
for (uint8_t i=0; i<cnt_func; i++) {
ary_function[i]();
}
delay(1000);
}