常量联合对象有什么用?

时间:2012-08-10 08:08:26

标签: c++ c const unions

如果我创建一个const联合对象(例如在下面的代码中),那么就不能在那里完成任何成员赋值。那么在任何情况下都有使用const union对象吗?

union un
{
    int i;
    float f;
    char c;
};
const union un a; 
/// ! a.i = 10; error.

2 个答案:

答案 0 :(得分:34)

您仍然可以按如下方式初始化联合:

const union un a = { .i = 100 }; 

然后在你的代码中使用它。

答案 1 :(得分:15)

你仍然可以在声明时分配它,例如:

const union un a = {0};

更新:该表示法设置了联盟成员的第一个

相关问题