Например, у меня есть такой код:
template<typename A, typename B>
using Map = std::map<A, B>;
template<typename A, typename B>
using UnorderedMap = std::unordered_map<A, B>;
Я хотел бы сделать то же самое для std::array
, то есть:
template<typename A, typename B>
using Array = std::array<A, B>;
Но если я это сделаю, я получу ошибку компилятора:
ошибка C2993: «B»: недопустимый тип для нетипового параметра шаблона «_Size»
ошибка C2955: 'std::array': для использования шаблона класса требуется шаблон
массив списка аргументов (21): сообщение: см. объявление 'std::array'
Есть ли способ объявить Array
, который в фоновом режиме использовал бы std::array
?
В конце концов, я хочу использовать массивы типа Array<int, 7> items
вместо std::array<int, 7> items
.