我有一组类A,B,C,我希望按类型fe的通用代码访问它们的实例
template<typename T>
newObject()
{
return m_storage->getNew();
}
Run Code Online (Sandbox Code Playgroud)
其中m_storage是A或B或C的实例,取决于T.
所以我提出了std :: tuple,但是有问题因为我无法按类型从元组中获取元素.
std::tuple<A,B,C> m_tpl;
template<typename T>
newObject()
{
return m_tpl.get<T>().getNew();
}
Run Code Online (Sandbox Code Playgroud)
有没有办法做到这一点?这可能吗?
谢谢.
PS:我不想为每种类型编写newObject的特化.:-)