当前位置:网站首页>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 ).
边栏推荐
- 睿智的目标检测59——Pytorch Focal loss详解与在YoloV4当中的实现
- vsCode创建自己的代码模板
- Rehabilitation type force deduction brush question notes D3
- Dameng database all
- Marvell 88e1515 PHY loopback mode test
- Mutual transformation between two-dimensional array and sparse array (sparse matrix)
- A brief introduction to heading/pitch/roll and omega/phi/kappa
- LSA Type Explanation - detailed explanation of lsa-2 (type II LSA network LSA) and lsa-3 (type III LSA network Summary LSA)
- Skywalking all
- confidential! Netease employee data analysis internal training course, white whoring! (attach a data package worth 399 yuan)
猜你喜欢
2. Addition and management of Oracle data files
ROS2——工作空间(五)
Find the combination number acwing 888 Find the combination number IV
Game theory acwing 891 Nim games
Package webapp or H5 pages into apps
Positive height system
SolidWorks template and design library are convenient for designers to call
在本地搭建一个微服务集群环境,学习自动化部署
Game theory acwing 894 Split Nim game
[algorithm post interview] interview questions of a small factory
随机推荐
Speedtree01 generator properties
How to correctly ask questions in CSDN Q & A
Dameng database all
将webApp或者H5页面打包成App
Interval problem acwing 906 Interval grouping
Vant Weapp SwipeCell設置多個按鈕
Vant weapp swippecell set multiple buttons
The route of wechat applet jumps again without triggering onload
Inclusion exclusion principle acwing 890 Divisible number
Configuration method and configuration file of SolidWorks GB profile library
mingling
ROS2——功能包(六)
Chinese remainder theorem acwing 204 Strange way of expressing integers
What is linting
Positive height system
基于FPGA的一维卷积神经网络CNN的实现(八)激活层实现
Paper reading report
new和malloc的区别
Adg5412fbruz-rl7 applies dual power analog switch and multiplexer IC
testing framework