我刚读了一本开源的书。在里面,我看到了一些代码,它让我很陌生。所以它是关于结构的:

struct _NameStruct;

typedef struct _NameStruct NameStruct

之后,他们(开源)使用NameStruct来包含一些变量我想知道为什么struct-NameStruct还没有定义一些变量,所以他们如何使用它?

最佳答案

如果仔细阅读代码,您可能会发现它们只使用指向数据类型的指针。它可能是一种不透明的数据类型,因此您可以传递指向它的指针,但实际上不必知道它是如何实现的。
这些通常用于句柄之类的事情,只有库需要知道结构的实现。

10-08 00:33