gpt4 book ai didi

c++ - 如何使用匿名结构或类?

转载 作者:太空宇宙 更新时间:2023-11-03 10:33:58 25 4
gpt4 key购买 nike

那么,声明匿名类或结构是可能的,但如何使它有用呢?

int main() {
class{
int ClassVal;
};
struct{
short StructVal;
};
StructVal = 5; //StructVal is undefined
ClassVal = 5; //ClassVal is undefined too?
return 0;
}

如果将它们都放在主函数之外,它们也将无法访问。我问这个只是因为它有点有趣:)

编辑:为什么 main 函数之外的 union (在全局范围内)必须是静态声明的例如:

static struct {
int x;
};
int main() {
//...
}

最佳答案

匿名类和结构可用于直接定义变量:

int main()
{
class
{
int ClassVal;
} classVar;

struct
{
short StructVal;
} structVar;

structVar.StructVal = 5;
classVar.ClassVal = 5;

return 0;
}

上面的不是很常见,但如 Simon Richter 在他的回答中所述,在 union 中使用时非常常见。

关于c++ - 如何使用匿名结构或类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8164626/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com