-1

声明:

new int [10]で割り当てられたメモリは、delete[]で割り当てを解除する必要があります。

それで..

new int[10];

では、どうすれば削除できますか?

編集:みんなありがとう:)私はウィルソン、ポール、ティムなどが正しいと思います、ステートメントはいくつかの単語を省略しているので私を混乱させました---...それは単にです

int * p = new int[10];

delete [] p; 

私はロブの答えを見たことがありませんが、私には本当に新しいように見えます!説明をいただければ幸いです。:)

delete[] new int[10];
4

3 に答える 3

6

newから返された値を保持するための変数がありません。次のようなものが必要です。

int* intArray = new int[10];

その後、メモリを削除するときに、変数を介してメモリを参照します。

delete[] intArray;
于 2013-02-27T20:54:58.653 に答える
1

それが言うように:

int *foo = new int[10];
delete[] foo;
于 2013-02-27T20:54:06.453 に答える
1
int * p = new int[10]; // allocate p

// do stuff with p

delete [] p;           // release p when you're done
于 2013-02-27T20:54:25.720 に答える