我已经开始学习gtk了。当我浏览参考手册时,我发现了许多typedef,例如“typedef struct _GtkWidget GtkWidget”。我知道typedef,但我不太明白这些陈述的含义。有人能告诉我吗?谢谢!
答案 0 :(得分:2)
用于隐藏实现细节。 typedef使GtkWidget
成为opaque data type(实际struct _GtkWidget
未在Gtk + 3.0以后的标题中公开)结构的实际组成部分在您使用时对您隐藏在你的申请中。您将需要使用访问器函数来操作组成结构成员。这样即使实现发生变化,您也不必重新编写应用程序
希望这有帮助!
答案 1 :(得分:0)
它只是给“struct _GtkWidget”另一个名字,GtkWidget。如果你问我,这是一个毫无意义的事情,因为它污染了命名空间。