Я пишу класс вектор
template <typename T, unsigned char size>
class Vector
{
public:
Vector()
{
}
private:
T vector[size];
};
Я хочу сделать свои конструкторы для разных размеров вектора, которые будут принимать разное количество аргументов. Я уже пробовал наследовать вектора основных размеров (2, 3, 4) и делать для них свои конструкторы, но это приводило к ненужным проблемам связанным с различиями типов.
template<typename... x_Args>
Vector(x_Args &&... args): vector{::std::forward<x_Args>(args)...}
{
static_assert(sizeof...(x_Args) == size);
}
Сборка персонального компьютера от Artline: умный выбор для современных пользователей