Подумайте об этом, в статической сфере вы не всегда можете сказать, что что-то действительно инициализировано, или что main запущен. Также есть статическая инициализация и динамическая фаза инициализации, статическая, первая сразу после динамической, где порядок имеет значение.
Если бы у вас не было обнуления статики, то на этом этапе вы бы совершенно не могли точно сказать, была ли что-либо инициализирована ВСЕ, и короче говоря, мир C ++ развалился бы и основные вещи, такие как синглеты (или любой динамического статического init) просто перестал бы работать.
Ответ с пунктами марки является восторженным, но немного глупым. Все это может относиться к нестатическому распределению, но это не сделано (ну, иногда, но не обычно).