Палец вверх 1
Перевод
Перевод

Инициализировать статический член класса const без параметров в конструкторе пользовательского класса в C ++

Как я могу инициализировать статический член класса const пользовательского класса в C ++?

Вот что я попробовал до сих пор:

Заголовочный файл:

class A
{
private:
static const B b;
};

Исходный файл:

const B A::b;

Конструктор класса B не имеет параметров.

Подход не работает. b становится красным, подчеркнутым в исходном файле, и он записан там, const member "A::b" requires an initializer .

c++ class static initialization member
задан trafalgarLaww 21 окт. 2017 г., 19:08:55
источник

1 ответ

Решение 2
Перевод
Перевод

Вы предоставили конструктор по умолчанию для B?

class B
{
public:
    B() {}
};

Здесь сработало

ответ дан rflobao 21 окт. 2017 г., 20:05:52
источник