Po pierwsze, mam takie funkcje.Jak zadeklarować tablicę wskaźników funkcji?
void func1();
void func2();
void func3();
Następnie tworzę typedef na tablicy:
void (*FP)();
Jeśli piszę normalną tablicę wskaźników funkcji, powinno być coś takiego:
FP array[3] = {&func1, &func2, &func3};
chcę uczyń go stałą tablicą, używając const przed "FP", ale mam te komunikaty o błędach:
error: cannot convert 'void (*)()' to 'void (* const)()' inialization
PD: Przepraszam, mój zły angielski.
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};
Mój kod jest bardziej duże i złożone, to jest podsumowanie
Jego zawsze lepiej napisać rzeczywisty kod niż powiedzenie „Następnie tworzę typedef na tablicy:” lub „za pomocą const przed«FP»”. – sand
@Facon: Używasz lekcji? Czy mógłbyś tutaj opublikować cały kod? – Jagannath
Edytowałem post. – Facon