typedef struct all_the_pictures { Location_and_image CC; Location_and_image GY; Location_and_image ZF; Location_and_image HZ; Location_and_image MC; Location_and_image ZY; Location_and_image Z1; Location_and_image Z2; Location_and_image Z3; Location_and_image Z4; }AP; Location_and_image BK(PBK,0,0,0,0,1,1); Location_and_image CC(PCC,644,100,56,60,2,2); Location_and_image GY(PGY,644,348,56,60,2,1); Location_and_image ZF(PZF,520,348,56,60,1,2); Location_and_image MC(PMC,892,348,56,60,1,2); Location_and_image HZ(PHZ,520,100,56,60,1,2); Location_and_image ZY(PZY,892,100,56,60,1,2); Location_and_image Z1(PZ,520,596,56,60,1,1); Location_and_image Z2(PZ,644,596,56,60,1,1); Location_and_image Z3(PZ,768,596,56,60,1,1); Location_and_image Z4(PZ,892,596,56,60,1,1); //图片及图片类“赋值” AP Hua(CC,GY,ZF,HZ,MC,ZY,Z1,Z2,Z3,Z4); BeginBatchDraw();
时间: 2023-07-31 09:07:27 浏览: 100
这段代码中定义了一个名为`AP`的结构体,其中包含十个成员,每个成员都是名为`Location_and_image`的自定义结构体类型。然后,你又定义了十个`Location_and_image`类型的变量,分别代表不同的图片及其相关信息。最后,你将这些变量作为参数,创建了一个`AP`类型的结构体变量`Hua`。
在这段代码中,你定义了一个名为`CC`的变量,它与结构体`AP`的成员`CC`同名,这会导致编译器无法区分这两个变量。这可能导致代码编译错误,也可能导致程序运行时错误。
为了解决这个问题,你可以修改变量名,或者使用不同的方式初始化`AP`类型的结构体变量。例如,你可以使用以下代码:
```c++
AP Hua = {BK, CC, GY, ZF, HZ, MC, ZY, Z1, Z2, Z3, Z4};
```
这样就不需要为每个成员分别赋值,而是可以使用一个花括号列表将所有成员初始化。另外,你需要确保变量名不会与结构体成员名冲突。
阅读全文