Во-первых, у меня есть такие функции.
void func1();
void func2();
void func3();
Затем я создаю свой typedef для массива:
void (*FP)();
Если я напишу обычный массив указателей на функции, это должно быть примерно так:
FP array[3] = {&func1, &func2, &func3};
Я хочу сделать его постоянным массивом, используя const до "FP", но у меня есть это сообщение об ошибке:
error: невозможно преобразовать 'void (*)()' в 'void (* const)()' инициализация
PD: Извините, мой плохой английский.
EDIT:
x.h
typedef void (*FP)();
class x
{
private:
int number;
void func1();
void func2();
void func3();
static const FP array[3];
}
x.cpp
const FP x::array[3] = {&x::func1, &x::func2, &x::func3};
Мой код более крупный и сложный, это сводка