名前空間
変種
操作

delete expression

提供: cppreference.com
< cpp‎ | language

 
 
C++言語
一般的なトピック
フロー制御
条件付き実行文
繰り返し文 (ループ)
ジャンプ文
関数
関数宣言
ラムダ関数宣言
inline 指定子
例外指定 (非推奨)
noexcept 指定子 (C++11)
例外
名前空間
指定子
decltype (C++11)
auto (C++11)
alignas (C++11)
記憶域期間指定子
初期化
代替表現
リテラル
ブーリアン - 整数 - 浮動小数点
文字 - 文字列 - nullptr (C++11)
ユーザ定義 (C++11)
ユーティリティ
属性 (C++11)
typedef 宣言
型エイリアス宣言 (C++11)
キャスト
暗黙の変換 - 明示的な変換
static_cast - dynamic_cast
const_cast - reinterpret_cast
メモリ確保
delete
クラス
クラス固有の関数特性
特別なメンバ関数
テンプレート
その他
 
とリリースしたメモリ領域で割り当てられたオブジェクト(s)は破棄します
Original:
Destructs object(s) previously allocated by the
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

[編集] 構文

::(オプション)    delete    expression (1)
::(オプション)    delete [] expression (2)

[編集] 説明

以前new式で構成されたオブジェクトを破棄し、得られたメモリ領域を解放します。 expressionnew式への前回の呼び出しによって返されたポインタ値になる必要があります。配列の2番目のバージョンを使用しなければならないのに対し、シングルに割り当てられたオブジェクトの場合、式の最初のバージョンは、使用しなければなりません。 配置によって初期化されたオブジェクトを解放する削除式が存在しない新しい、メモリ解放関数とデストラクタを明示的に呼び出さなければなりません.
Original:
Destructs objects, previously constructed by new expression and releases the obtained memory area. The expression must result in a pointer value that was returned by previous call to the new expression. For single allocated objects the first version of the expression must be used, whereas for arrays the second version must be used. There is no delete expression deallocating objects initialized by placement new, deallocation function and destructor must be explicitly called.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
メモリはメモリ解放関数、どちらoperator delete(表現の最初のバージョンの場合)またはoperator delete[](式の2番目のバージョンの場合)で解放され.
Original:
The memory is deallocated by an メモリ解放関数, either operator delete (for the first version of the expression) or operator delete[] (for the second version of the expression).
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
メモリ解放関数の名前はまずローカルクラスタイプスコープで検索され、検索が失敗した場合にのみ、グローバルな名前空間が検索されます。 ::delete式中に存在する場合、唯一のグローバルな名前空間が検索されます。関数のプロトタイプは次のようになっている必要があります
Original:
The deallocation function's name is firstly looked up in the local class type scope and only if the lookup fails, the global namespace is looked up. If :: is present in the delete expression, only the global namespace is looked up. The prototype of the function must look like the following:
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
void operator delete  (void *ptr);
for the first version
void operator delete[](void *ptr);
for the second version
両方のこれらの関数は、暗黙的に各翻訳単位で宣言されています。プログラムは、それらを明示的に実装されていない限り、また、暗黙の実装は、デフォルトでは、コンパイラによって提供されています。詳細については、このを参照してください。.
Original:
Both these functions are implicitly declared in each translation unit. Also, implicit implementations are provided by the compiler by default, unless the program has explicitly implemented them. See この for more information.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

[編集] キーワード

delete