C++ 使用可变模板实现通用无限制联合

C++ 使用可变模板实现通用无限制联合,c++,c++11,C++,C++11,包含非限制联合的示例,该联合具有包含非POD类型的联合和指示联合的哪个成员处于活动状态的枚举 我想概括一下这个想法 template <typename... T> class Union { int active_member_; union { T... }; }; 模板 阶级联盟{ int活动成员; 联合{ T。。。 }; }; 然而,我不知道细节。任何人都知道我如何在给定整数I的情况下访问union中的第I个成员?你不能(也就是说,不是在运行时)。代码

包含非限制联合的示例,该联合具有包含非POD类型的联合和指示联合的哪个成员处于活动状态的枚举

我想概括一下这个想法

template <typename... T>
class Union {
  int active_member_;
  union {
    T...
  };
};
模板
阶级联盟{
int活动成员;
联合{
T。。。
};
};
然而,我不知道细节。任何人都知道我如何在给定整数I的情况下访问union中的第I个成员?

你不能(也就是说,不是在运行时)。代码不应该能够做到这一点。您可以查看