我正在调整现有代码并希望避免重命名变量等。我在一个struct []中定义了值,并希望将其值赋给另一个struct []。
简化示例。我有:
static const struct {
int xyz;
} var1[] = { {1}, {2}, {3} };
我想做的事情看起来有点像这样:
static const struct {
int xyz;
} var2[] = var1;
[...]
if (var2[1].xyz === 1) {
[...]
}
基本上我需要使用另一个struct []来别名/指向/ copy struct []。
有什么想法吗?
答案 0 :(得分:2)
您的尝试无法正常工作,因为1.数组不可分配,因为2.您的两个未命名的类是分开且不相关的。
我可以以某种方式指定变量作为指向现有值的指针吗?
你当然可以:
Resource
在C ++ 11之前,您必须为该类命名:
static auto var2 = var1; // pointer to first element
static auto var3 = &var1; // pointer to the array