new delete malloc free的区别
1个回答
展开全部
new delete是一对的,主要用于C++里的对象创建和释放:
new 创建时会自动调用对象的构造函数,初始化成员;delete时会自动调用析构函数释放对象内存。
malloc free 是一对,malloc是创建一块内存区域然后把首地址返回,不会初始化;free是用来释放malloc创建的内存空间。
这两对之间不可以混用,即不能用free去释放new创建的空间,也不能delete去释放malloc创建的内存空间。
new 创建时会自动调用对象的构造函数,初始化成员;delete时会自动调用析构函数释放对象内存。
malloc free 是一对,malloc是创建一块内存区域然后把首地址返回,不会初始化;free是用来释放malloc创建的内存空间。
这两对之间不可以混用,即不能用free去释放new创建的空间,也不能delete去释放malloc创建的内存空间。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询