最終更新:2020-12-16 (水) 13:43:34 (1373d)
C++/メモリ管理
演算子
例
int *p;//ポインタ int i; p = new int[10]; // int型10個分の領域を動的確保 delete [] p; // 動的に確保した領域を解放
アロー演算子
- new演算子を使ってインスタンス化する場合、そのメンバ変数やメンバ関数をアクセスするときに、アロー演算子を使うことになります。(ポインタ経由のアクセスになるので)
malloc
- C++では通常、malloc関数(callocやreallocも含む)を使いません。
- malloc関数ではコンストラクタが呼び出せないからです。デフォルトコンストラクタも呼び出されません。
- 同様に、free関数ではデストラクタが呼び出されません。