C ++匿名结构异常定义

时间:2017-07-28 20:53:22

标签: c struct anonymous-struct

看一些.h脚本我看到了:

struct
{
  int resource;
} SimulRes[SIMULRES];

SIMULRES在上面定义为:

#define SIMULRES 50

我认为这是一个匿名结构,但我习惯于在命名结构中定义它。这与不同的c ++编译器有什么关系?方括号内的参数有什么作用? 感谢。

2 个答案:

答案 0 :(得分:3)

此定义创建一个匿名SIMULRES的大小为struct的数组。

因为结构类型是匿名的,所以你不能将它传递给函数或者创建除已经定义的实例之外的任何其他实例(或指针)。

答案 1 :(得分:-1)

这不是C ++语法,而是C语法。

它仅仅意味着定义50(var item = myArray[Math.floor(Math.random()*items.length)]; )个元素的数组SimulRes,其中元素的类型是具有单个项SIMULRES的结构。