C言語で関数ポインタを使って

typedef {
 int (*func)(int param);
}funcList[]={
 func1,func2,func3・・・
};

int callFunc(int funcNum,int param)
{
 return funcList[funcNum].func(param);
}

のような実装をC++のクラスでできますか?
関数ポインタによるリスト化したいのは protected なメソッドです。
そのクラスは継承されるのが前提でひとつのプログラム内部で複数のインスタンスが生成されるのでクラスの外に定義するのはしたくありません。
switch文で分岐もメソッド数が200以上になりそうなので実用的でないし。