Код: Выделить всё
Tuple t{1,2,3};
Это означает, что он должен сделать 2 вещи:
- Создать кортеж размера 3 ( Tuple::data[3] )
- заполните Tuple::data числами из формы std::initializer_list
Код: Выделить всё
template
struct Tuple{
T data[sizeof...(args)];
Tuple(const T& args...):data{args...}{};
};
Код: Выделить всё
template
//template
struct Tuple{
T data[sizeof...(args)];
//T data{args...};
//template
//Tuple(T... args):data{args...}{};
Tuple(const T& args...):data{args...}{};
//Tuple(T* ...args):data{args...}{};
};
Код: Выделить всё
T...argsЯ пытаюсь использовать это как простой пример, чтобы понять вариационные шаблоны и избежать использования std::initializer_list
Подробнее здесь: https://stackoverflow.com/questions/575 ... late-class
Мобильная версия