Я пытаюсь использовать момент пользовательского класса в качестве параметра шаблона.
class X {
public:
X() {};
};
template <class Foo, Foo foo>
struct Bar {
};
const X x;
Bar<X, x> foo;
Компилятор утверждает, что x
не может появляться в константном выражении. Почему так? Есть все, что нужно для создания этого объекта во время компиляции.