Учитывая
class Foo { public: bool *b; Foo(); }; Foo::Foo() :b() { } int main() { Foo foo; }
Что делает b() в списке инициализатора класса?Кажется, возможно, инициализировать значение указателя на 0.
b()
Это значение инициализации ;в качестве эффекта встроенные типы будут инициализированными нулями .Это означает, что b будет инициализировано в 0 (нулевой указатель ).
b
0
4) в противном случае объект инициализируется нулями.
и
Если T - скалярный тип, начальным значением объекта является целочисленная постоянная ноль, явно преобразуемая в T.
, а также
Инициализация нуля и значения также инициализирует указатели на их нулевые значения.