Я хочу иметь в своем классе массив static const
char
. GCC пожаловался и сказал мне, что я должен использовать constexpr
, хотя теперь он сообщает мне, что это неопределенная ссылка. Если я сделаю массив нечленом, он компилируется. Что происходит?
// .hpp
struct foo {
void bar();
static constexpr char baz[] = "quz";
};
// .cpp
void foo::bar() {
std::string str(baz); // undefined reference to baz
}