int *ptr = new int[x] - Ist die Erstellung eines Zeigers, ohne nullptr so zulässig?

Seite 1 von 1 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/int-ptr-new-intx-ist-die-erstellung-eines-zeigers-ohne-nullptr-so-zulaessig_247200/page_1 - zur Vollversion wechseln!


LTD schrieb am 27.09.2016 um 22:10

Abend,

kann mir jemand erklären, ob es bei der Erstellung eines Pointers auf ein Array erlaubt ist, anstelle von

int *ptr = nullptr;
ptr = new int[x];

gleich

int *ptr = new int[x];

zu verwenden?

Vielen Dank für eure Antworten!


DKCH schrieb am 27.09.2016 um 22:22

ja natürlich... und aufs delete nicht vergessen


LTD schrieb am 27.09.2016 um 22:46

Wunderbar, danke!


PuhBär schrieb am 27.09.2016 um 23:48

Die 2-zeilige Variante ergibt in dem Beispiel keinen Sinn und ist fehleranfälliger. Auch könnte man den Pointer bzw. die Elemente, auf die der Pointer zeigt, nicht const deklarieren.
Also nicht nur erlaubt sondern auch zu bevorzugen.

Es geht um C, oder? Falls doch um C++ und STL zur Verfügung steht -> Smart pointer.




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2024