09/12/30 15:31:31
回答ありがとうございます。
char *c = new char[5];
と
char c[5];
の場合は、後者には他の文字列ポインタを代入できないというくらいで
基本的には同じような扱い方でOKなんですよね?
で、関数を抜けるときは前者のみdeleteが必要ということですよね?
char **c = new char*[5];
と
char *c[5];
の場合のnewとdeleteの対応ですが、
後者はポインタの配列になると思うのですが
各要素に個別にnewを使っていた場合は、
また個別にdeleteしていくしかないということになるんですか?
関数を抜けるときに配列自体が開放される(?)ので
ついでに要素についても自動的に開放されるということはないのでしょうか?