Рассмотрим этот код:
enum class EnumType
{
Type1,
Type2
};
constexpr std::size_t the_length;
template <EnumType T>
int function()
{
std::array<uint8_t, the_length> x;
//some code here that uses x
}
Я бы хотел, чтобы длина массива x
имела другое значение в зависимости от типа T
.Например, если T
может принимать одно из 2 значений (Type1
, Type2
), я бы хотел, чтобы the_length
имел значение 10, если T==Type1
, и значение 20, если T==Type2
.Можно ли это сделать в C ++ 11?Спасибо