假设这个方案:
/* avl.c */
typedef struct avl {
void *data;
int height;
struct avl *left, *right;
} node;
/* avl.h */
struct avl; /* opaque */
我想使用:
struct node *root;
代替
node *root;
在 avl.c 中,但目前我发现的最好的是:
struct avl {
void *data;
int height;
struct avl *left, *right;
};
#define node avl
其他方式?