malloc/free是C/C++的库函数.
new/delete是C++的运算符.
对于非内部数据类型的对象, 用malloc/free无法满足动态对象的要求. 因为对象在创建时同时要执行构造函数, 消亡之前要执行析构函数. 由于malloc/free是库函数而不是运算符, 不在编译器控制权限之内, 不能把执行构造函数和析构函数的任务加载到上面.
偶然翻书看到滴. 顺手写下来了.
new/delete是C++的运算符.
对于非内部数据类型的对象, 用malloc/free无法满足动态对象的要求. 因为对象在创建时同时要执行构造函数, 消亡之前要执行析构函数. 由于malloc/free是库函数而不是运算符, 不在编译器控制权限之内, 不能把执行构造函数和析构函数的任务加载到上面.
偶然翻书看到滴. 顺手写下来了.