查看一些 .h 脚本我看到了这个:
struct
{
int resource;
} SimulRes[SIMULRES];
其中 SIMULRES 上面定义为:
#define SIMULRES 50
我认为这是一个匿名结构,但我习惯于看到它在命名结构中定义。这对于不同的 C++ 编译器有何表现?方括号内的参数有什么作用? 谢谢。
最佳答案
此定义创建一个匿名 struct
大小为 SIMULRES
的数组。
由于结构类型是匿名的,因此您无法将其传递给函数或创建除已定义的实例(或指针)之外的任何其他实例(或指针)。
关于C++ 匿名结构异常定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45382248/