C++ 匿名结构异常定义

标签 c struct anonymous-struct

查看一些 .h 脚本我看到了这个:

struct
{
  int resource;
} SimulRes[SIMULRES];

其中 SIMULRES 上面定义为:

#define SIMULRES 50

我认为这是一个匿名结构,但我习惯于看到它在命名结构中定义。这对于不同的 C++ 编译器有何表现?方括号内的参数有什么作用? 谢谢。

最佳答案

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

由于结构类型是匿名的,因此您无法将其传递给函数或创建除已定义的实例(或指针)之外的任何其他实例(或指针)。

关于C++ 匿名结构异常定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45382248/

相关文章:

c - 以相反的顺序打印字符串中的单词 C

C++ 在 Vector 中查找对象成员值

c++ - 如何用命名的等价物替换未命名的结构、 union 、类?

c++11 - 匿名结构中的大括号或等于初始化器在 VS2013 上不起作用

c - 尝试更改 C 中二维数组中的元素

c - 如何退出子进程并从 execvp() 返回其状态?

c - 数组中两个相邻值之间的最大差异,C

C++数据结构声明

c# - 如何在 C# 中将两个结构类型变量链接在一起?

c - 取消对匿名结构指针的强制转换是否违反严格的别名?