如果有的话,我想知道一种成员数据类型的结构和 union 之间的区别。
最佳答案
在 C 中:无。著名的“节省空间笑话”#define struct union
几乎不是笑话。
在 C++98 中: union 只能有 POD members , 非 union 类可以有任意成员。
在 C++11 中: union 可以有任意对象类型的数据成员(但不是引用类型),但它们的使用比非 union 类更受限制。 (即: union 不能有虚拟成员函数,不能是基类,也不能有基类。)此外,与单成员非 union 类相比,您必须编写更多代码才能使单成员 union 工作, 因为你必须自己编写构造函数和析构函数。
关于c++ - 如果我们只有一个成员,结构和 union 之间有什么区别吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26572432/