我有这样的情况:
A.h和B.h
在A.h年中:
typedef struct TypeA TypeA_t;
struct TypeA {
...
TypeA_t *a;
void (*doSomething)(TypeB_t *);
};
在B.h年中:
typedef struct TypeB TypeB_t;
struct TypeB {
...
TypeB_t *b;
TypeA_t something;
};
在每个文件中包含头文件的正确方式是什么?
如果在B.h
中包含A.h
,在A.h
中包含B.h
,则得到:
A.h
英寸error: unknown type name 'TypeB_t'
英寸
和
B.h
英寸error: unknown type name 'TypeA_t'
英寸
我在这里发现了一个类似的问题,但它不适用于我的情况.