Вот простой пример инициализации в классе. Это полезно для меньшего набора текста, особенно когда доступно более одной сигнатуры конструктора. Рекомендуется также в основных рекомендациях .
class Foo {
public:
Foo() = default; // No need to initialize data members in the initializer list.
Foo(bool) { /* Do stuff here. */ } // Again, data member already have values.
private:
int bar = 42;
// ^^^^ in-class initialization
int baz{};
// ^^ same, but requests default initialization
};
Поскольку члены данных явно инициализированы, вторая часть ваших вопросов не относится к инициализации в классе.