Ruft new [] den Standardkonstruktor in C ++ auf?

Wenn ich new [] verwende, um ein Array meiner Klassen zu erstellen:

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

Ich sehe, dass es einen Standardkonstruktor von @ aufruA count mal. Als Ergebnisarr hatcount initialisierte Objekte vom TypA. Aber wenn ich das gleiche verwende, um ein int-Array zu konstruieren:

int *arr2 = new int[count];

it ist nicht initialisiert. Alle Werte sind so etwas wie-842150451 obwohl der Standardkonstruktor von int seinen Wert @ zuwei0.

Warum gibt es so unterschiedliches Verhalten? Wird ein Standardkonstruktor nicht nur für integrierte Typen aufgerufen?

Antworten auf die Frage(6)

Ihre Antwort auf die Frage