よくわかってなかったので

malloc

ヒープ領域からメモリを確保 メモリの動的管理に使う free で解放  Cで使う(C++も)

new

コンストラクタ、デストラクタが使える メモリの動的管理に使う C++で使う deleteで削除

参考

以下ブログより以下を引用 https://puarts.com/?pid=937 new、delete

  • コンストラクタ、デストラクタを呼べる
  • 動的メモリ確保が必要な参照型のデータをメンバに持つようなデータ型を要素とするときにはどうしてもnew、deleteによるメモリ確保が必要 malloc、free
  • reallocでメモリ拡張ができる
  • charやintなど基本的な型を要素とする場合はこちらの方が適している?

以下の方がもっとわかりやすい?

https://www.it-swarm-ja.com/ja/c++/new-delete%E3%81%A8malloc-free%E3%81%AE%E9%81%95%E3%81%84%E3%81%AF%E4%BD%95%E3%81%A7%E3%81%99%E3%81%8B%EF%BC%9F/958447256/

スコープも一緒に勉強した方がよさそう

変数のスコープ

変数を作る時には普通のスコープに従う作り方(スタック)と自由領域に確保する(ヒープ)作り方の2種類