提问者:小点点

复杂模板类型的别名


我在文件segment.h中有以下定义

template<typename T, typename VecType = mat::vec3_gen<T> > class Segment
{
    // class
}

与其使用typeNameVecType=mat::vec3_gen,我希望为该类型使用一些别名,并且还能够在文件之外使用它。 我怎么能做到呢?


共1个答案

匿名用户

由于类型Vectype依赖于T,因此可以使类型别名成为segment的成员。

template<typename T>
class Segment {
public:
    using VecType = mat::vec3_gen<T>;
};

现在您可以在其他代码中使用它:

auto vec = Segment<int>::VecType;