当前位置:网站首页>The difference between new and malloc
The difference between new and malloc
2022-07-05 06:50:00 【An embedded enthusiast】
new and malloc The difference between
1、new Allocate memory from free storage ,malloc Allocate memory from the heap . Free storage is C++ be based on new An abstract concept of an operator , Usually through new Operator for memory request , This memory is the free storage area . And heap is an operating system term , It is a special memory maintained by the operating system , For dynamic allocation of program memory . So can a free storage area be a heap ( The problem is equivalent to new Whether memory can be allocated dynamically on the heap ), It depends. operator new Implementation details . Free storage can be more than just a heap , It can also be static storage , It's all up to you operator new Where to allocate memory for objects .
2、new、delete Returns a pointer to a data type ;malloc、free The return is void The pointer .
3、 Use new Operators do not need to specify the size of memory block when applying for memory allocation , The compiler computes itself based on the type information ; Use malloc You need to explicitly indicate the size of memory required .
4、new You can call the constructor of an object , Corresponding delete Call the corresponding destructor ;malloc Just allocate memory ,free Just reclaim memory , Construction and destructors are not executed . stay new When an object , The first call malloc Allocate memory space for objects , And then call the constructor of the object. .delete Will call the object's destructor , And then call free Reclaiming memory .
5、new、delete It's the operator , Can overload ;malloc、free Is the function , Can be rewritten ( Cover ).
边栏推荐
- [MySQL 8.0 does not support capitalization of table names - corresponding scheme]
- 7. Oracle table structure
- Dameng database all
- 6-2 sequence table operation set
- Design specification for mobile folding screen
- confidential! Netease employee data analysis internal training course, white whoring! (attach a data package worth 399 yuan)
- Cloud native related technology learning
- Markdown syntax
- how to understand the “model independent.“
- Sum of two numbers, the numbers in the array are converted to decimal, added, and output inversely
猜你喜欢
LSA Type Explanation - detailed explanation of lsa-2 (type II LSA network LSA) and lsa-3 (type III LSA network Summary LSA)
LSA Type Explanation - lsa-1 [type 1 LSA - router LSA] detailed explanation
Adg5412fbruz-rl7 applies dual power analog switch and multiplexer IC
. Net core stepping on the pit practice
UTC, GPS time and Tai
SolidWorks template and design library are convenient for designers to call
摄像头的MIPI接口、DVP接口和CSI接口
Dameng database all
inux摄像头(mipi接口)简要说明
逻辑结构与物理结构
随机推荐
乐鑫面试流程
Rehabilitation type force deduction brush question notes D3
将webApp或者H5页面打包成App
Orin 安装CUDA环境
Orin installs CUDA environment
Positive height system
Configuration method and configuration file of SolidWorks GB profile library
Stack acwing 3302 Expression evaluation
GDB code debugging
Game theory acwing 891 Nim games
Marvell 88e1515 PHY loopback mode test
睿智的目标检测59——Pytorch Focal loss详解与在YoloV4当中的实现
kata container
Game theory acwing 892 Steps Nim game
基于FPGA的一维卷积神经网络CNN的实现(八)激活层实现
[Chongqing Guangdong education] National Open University 2018 autumn 0702-22t contemporary Chinese political system reference questions
Written examination notes
Vant Weapp SwipeCell设置多个按钮
Vant weapp swippecell set multiple buttons
Vant Weapp SwipeCell設置多個按鈕