У меня есть следующие определения классов в С ++:
struct Foo {
int x;
char array[24];
short* y;
};
class Bar {
Bar();
int x;
Foo foo;
};
и хотел бы инициализировать структуру "foo" (со всеми ее членами) нулевым значением в инициализаторе класса Bar. Можно ли это сделать так:
Bar::Bar()
: foo(),
x(8) {
}
... ?
Или что именно делает foo (x) в списке инициализаторов?
Или структура даже автоматически инициализируется нулём компилятором?