E2158 'delete' のオペランドは非 const ポインタでなければならない (C++)

提供: RAD Studio
移動先: 案内検索

コンパイラのエラーと警告(C++):インデックス への移動

ポインタでない変数を削除することは不正です。定数へのポインタを削除することも不正です。

例を示します。



 const int x=10;
    const int * a = &x;
    int * const b = new int;
    int &c = *b;
    delete a;   //不正 - 定数へのポインタの削除
    delete b;   //有効
    delete c;   //不正 - オペランドがポインタ型でない
                //'delete&c' を使用してください