typedef struct { ... }A;
该文件是通过程序自动生成的,因此可以根据某些内容进行更改
现在在C项目中,我接受上述类型的参数,例如as
voID foo(const A & in) { ... }
如何在定义上述函数的头文件中转发声明A?
我试过了 :
typedef struct A A;
要么
struct A;
并且
typedef A A;
出于好奇.
但是,这会导致重新定义类型的编译时错误.
谢谢
A是未标记结构的typedef.并且您无法转发声明,因为您无法直接引用该结构.
你可以更改生成器,以便输出typedef struct A {…} A;?然后它可以在C和C中很好地编译,你可以在C中转发声明.
否则,您有两个选择:1.#include包含结构声明的文件. 2.手动复制结构.显然(1)更为可取.
总结以上是内存溢出为你收集整理的在c中向前声明C中的匿名结构全部内容,希望文章能够帮你解决在c中向前声明C中的匿名结构所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)