Вызывает ли new [] конструктор по умолчанию в C ++?

Когда я использую new [] для создания массива моих классов:

int count = 10;
A *arr = new A[count];

Я вижу, что он вызывает конструктор по умолчаниюA count раз. В следствииarr имеетcount инициализированные объекты типаA, Но если я использую то же самое для создания массива int:

int *arr2 = new int[count];

это не инициализировано. Все ценности что-то вроде-842150451 хотя конструктор по умолчанию для int присваивает его значение0.

Почему такое разное поведение? Разве конструктор по умолчанию не вызывается только для встроенных типов?