Я пытаюсь сделать следующее:как определения структуры с ЬурейиМи
typedef struct tagSTRUCT
{
MYPROC lpfnMyProc;
} STRUCT, *HSTRUCT;
typedef void (*MYPROC)(HSTRUCT);
void version1(HSTRUCT); // version of delegate MYPROC
void version2(HSTRUCT); // another version
...
, что дает мне ошибку компиляции. Я попытался сделать typedef из 'MYPROC' перед struct typedef, но получил слишком ошибку компиляции. Я попытался использовать форвардную декларацию структуры и получил также ошибку компиляции:
struct tagSTRUCT;
typedef tagSTRUCT STRUCT, *HSTRUCT;
typedef void (*MYPROC)(HSTRUCT);
struct tagSTRUCT
{
MYPROC lpfnMyProc;
};
Что мне делать?
Вперед декларация не используется, так как 'STRUCT' имеет действительный член' MYPROC', поэтому 'MYPROC' должен быть полным типом. –
@KerrekSB Но 'MYPROC' может быть определен просто отлично с объявленным вперед' tagSTRUCT', нет? ... –
@KonradRudolph: 'MYPROC' - всего лишь typedef, поэтому он не получает никакого определения вообще ... –