【发布时间】:2013-01-17 09:35:09
【问题描述】:
我能找到的所有描述都在类的上下文中谈论“指向成员的指针”。工会与结构非常相似,特别是也有成员。你也可以给那些成员一个指针吗?
例如
union x {
int a;
float b;
};
int x::*p = &x::a;
我不是在谈论指向整个联合的指针,作为联合成员的指针等。上面示例中的 p 确实是一个偏移量,显然大小为 0。我需要这个构造回复this question。
【问题讨论】:
-
联合是类(§9/5),所以我猜“是”。
-
该代码可以编译,所以我认为是的
-
我不知道你为什么想要它。您可以将
&x转换为int *以访问a,而无需知道其名称。 -
根据标准,联合是类 类型,所以是的,只要它们不是位域成员,您就应该清楚。
-
你打算使用那些成员指针作为模板参数吗?:-)
标签: c++