是否可以通过模板别名显式实例化模板类?
如果是这样,怎么做?否则,有人可以指出讨论并决定反对的 ISO 文件吗?
template<class T>
struct A { };
/// Explicit instantiate A for int:
template struct A<int>;
/// Alias
template<class T>
using B = A<T>;
/// Explicitly instantiate A for double via alias B:
template struct B<double>;
/// error: elaborated type refers to a non-tag type
这不应该实例化A<double>
,因为B<T>
它只是一个不同的名称A<T>
吗?