I have a class
template
class Matrix {
// ....
};
I want to make a typedef which creates a
C++11 added alias declarations, which are generalization of typedef, allowing templates:
template <size_t N>
using Vector = Matrix<N, 1>;
The type Vector<3> is equivalent to Matrix<3, 1>.
In C++03, the closest approximation was:
template <size_t N>
struct Vector
{
typedef Matrix<N, 1> type;
};
Here, the type Vector<3>::type is equivalent to Matrix<3, 1>.