美文网首页
malloc和new的区别

malloc和new的区别

作者: yutz | 来源:发表于2019-03-05 18:16 被阅读0次
    C语言中的malloc/free和C++中的new/delete的区别和联系

    相同点:
    它们都是对内存进行管理

    区别:
    区别1:类型
    malloc/free是函数,而new/delete是关键字、操作符

    区别2:作用
    malloc/free只是简单的进行内存的申请和释放;new/delete除了进行内存申请和释放,还会调用对象的构造函数和析构函数进行空间的初始化和清理

    区别3:参数与返回值
    malloc/free需要手动计算申请内存的空间大小,而且返回值是void*,需要自己转换成所需要的类型;

    new/delete可以自己计算类型的大小,返回为对应的类型指针

    相关文章

      网友评论

          本文标题:malloc和new的区别

          本文链接:https://www.haomeiwen.com/subject/jowouqtx.html