struct Trie {
Trie letters [27];
bool hasLetter;
bool EOW;
...
}
错误:字段'letters'的类型不完整
我收到了这个错误,并没有弄清楚什么是错的。我正在尝试使用数组创建一个Trie,我正在使用g ++编译器。非常感谢任何帮助。
答案 0 :(得分:1)
如果编译器不是指针,则编译器不会接受包含自身实例的结构。您获得的错误是因为声明是递归使用自身的。 (Trie包含一个Trie数组,其中每个元素都包含一个Trie数组,每个元素还包含一个Trie数组等等)
如果你真的想要包含自身实例的结构,请将字母改为指向Trie的指针数组。
struct Trie {
Trie* letters [27]; // array of pointers to other Trie structs
bool hasLetter;
bool EOW;
...
}