Похоже, что это должен быть конструктор; если это так, то не должно быть никакой тип возвращения, и он должен иметь такое же имя, как класс, например,
myClass::myClass()
: member1(0), member2(1)
{
}
Только конструктор может иметь список инициализатора; вы не можете делегировать этот тип инициализации функции Init
.
Любые нестатические элементы могут быть инициализированы в списке инициализаторов конструктора. Все константные и ссылочные элементы должны быть инициализированы в списке инициализаторов конструктора.
Все, что равняется you should generally prefer to initialize all members in the constructor initializer list, а не в теле конструктора (иногда это невозможно или неудобно использовать список инициализаторов, и в этом случае вы не должны использовать его, очевидно).
ok, это имеет смысл. Но ранее я получал ошибки, заявляя, что в класс могут быть объявлены только статические константные члены. Означает ли это, что только статические и постоянные члены могут быть назначены значения из декларации класса, в противопоставлении списку инициализатора или телу конструктора. – numerical25
В объявлении класса могут быть инициализированы только статические интегральные элементы. Любые нецелые члены должны быть инициализированы извне из объявления класса. (т. е. вы не можете инициализировать статический float в объявлении, но вы можете использовать int, short, char или bool). –