関数ポインタ(vTable)の配列を持つ構造体をCで宣言する際に問題があります。なぜなら関数ポインタを先に宣言すればであり、パラメータは自己参照型のthisポインタであるです。構造体はまだ宣言されていません。私は構造体AFTER関数ポインタを宣言すると、関数型が宣言されていないコンパイラは文句ので、私は構造体に設定する場合、次のようになります。CでvTableまたは関数ポインタの配列を使用して構造体を作成するにはどうすればよいですか?
#include <stdio.h>
#include <stdlib.h>
typedef int (*math_operation) (struct _MyClass *this,int a, int b);
typedef struct _MyClass{
int number;
char name[50];
math_operation *vTable[50];
} MyClass;
int main(void)
{
MyClass *test;
return(EXIT_SUCCESS);
}
をどの関数ポインタの配列を作成する適切な方法は何ですか親構造体への "this"ポインタを持っていますか?