要約すると、次のヘッダーファイルがいくつかあります。
ツリー.h:
#include "element.h"
typedef struct tree_
{
struct *tree_ first_child;
struct *tree_ next_sibling;
int tag;
element *obj;
....
} tree;
および element.h:
#include "tree.h"
typedef struct element_
{
tree *tree_parent;
char *name;
...
} element;
問題は、両者が相互に参照しているため、ツリーに要素を含める必要があり、要素にツリーを含める必要があることです。
「ツリー」構造を定義するには、要素構造が既知である必要がありますが、要素構造を定義するには、ツリー構造が既知である必要があるため、これは機能しません。
これらのタイプのループを解決するにはどうすればよいですか (これは「前方宣言」と関係があるのではないでしょうか?)。