Soweit ich weiß, geben beide Anweisungen einen int-Zeiger zurück und weisen nur Platz für 1 int auf dem Heap zu. Gibt es also einen praktischen Unterschied zwischen ihnen oder handelt es sich lediglich um Synonyme?
Ich lerne gerade C++ und habe Schwierigkeiten, den Unterschied zwischen den folgenden beiden Codezeilen zu verstehen: [code]int* a = new int; int* b = new int[1]; [/code] Soweit ich weiß, geben beide Anweisungen einen int-Zeiger zurück und weisen nur Platz für 1 int auf dem Heap zu. Gibt es also einen praktischen Unterschied zwischen ihnen oder handelt es sich lediglich um Synonyme?
Ich lerne gerade C++ und habe Schwierigkeiten, den Unterschied zwischen den folgenden beiden Codezeilen zu verstehen:
int* a = new int;
int* b = new int ;
Ich versuche, mit „new“ und „delete“ neuen Speicher zuzuweisen (zu Lernzwecken), aber *arr und *arr erzeugen einen Fehler, dass „Operand von ‚*‘ ein Zeiger sein muss, aber den Typ „int“ hat“....