enum Type{Type1,Type2};
template<enum Type>
struct Foo
{
};
const Type gettype()
{
return Type1;
}
const Type t = gettype();
Foo<t> foo; // конечно не прокатывает
В новом стандарте обещают "constexpr" , а как сейчас побороть компилятор ?