对于作业,我需要声明多个结构,没有问题.这些声明如下:
typedef struct struct1{
struct2* object;
}
typedef struct struct2{
struct1* object;
}
// functions using both struct1 and struct2 parameters
Run Code Online (Sandbox Code Playgroud)
当然,这会给我一个错误,因为struct2没有在struct1之前声明.因此,我尝试通过推杆事先声明它
struct struct2;
Run Code Online (Sandbox Code Playgroud)
在顶部.然而,这要求我将struct1块中的对象称为
typedef struct struct1{
struct struct2* obj;
}
Run Code Online (Sandbox Code Playgroud)
这个结构的函数将用于使用struct1*和struct2*参数,并进行测试(包括构造函数).使用上面示例中的struct标签会给我带来无数错误.有谁知道如何解决这一问题?
typedef struct s2 struct2;
typedef struct s1 {
struct2* object;
} struct1;
struct s2 {
struct1* object;
};
Run Code Online (Sandbox Code Playgroud)