配列に対する delete 演算子

提供: Appmethod Topics
移動先: 案内検索

new および delete 演算子:インデックス への移動


配列は operator delete[]() を使って削除します。配列を削除するときの構文は

delete [] expression

を使います。

char * p;
void func()
{
   p = new char[10];    // 10 文字を割り当て
   delete[] p;          // 10 文字を解除
}

初期の C++ コンパイラでは,delete 式で配列サイズを指定する必要があります。従来のコードを処理するため,コンパイラは警告を出し,指定してあるサイズを無視します。たとえば,上の例が delete[10] p となっていると,コンパイル時に次のような警告が出ます。

Warning: Array size for 'delete' ignored in function func()
(警告: 'delete' に指定した配列サイズは無視される)


関連項目