当前位置: 首页 > news >正文

网站如何做tag域名备案查询工信部

网站如何做tag,域名备案查询工信部,网站开发是什么职位,建设工程施工合同示范文本2022目录 前言: 一:C语言中区域划分的回顾及各个变量存在的位置 1.经典例题 ​编辑2.C/C中内存区域的划分 二:C内存管理方式 new delete操作符 1.对于内置类型 2.对于自定义类型 三:operator new和operator delete函数 1…

目录

前言:

一:C语言中区域划分的回顾及各个变量存在的位置

1.经典例题

​编辑2.C/C++中内存区域的划分 

二:C++内存管理方式  new delete操作符

1.对于内置类型

2.对于自定义类型 

三:operator new和operator delete函数 

1.new和delete的底层实现原理

2.new 和delete对内置类型和自定义类型处理的底层原理

1.对于内置类型

2.对于自定义类型

1.new的原理

2.delete的原理

3.new[N]的原理

4.delete[]的原理

四:定位new表达式(placement-new)

1.概念

五:malloc/free和new/delete的区别 

接下来的日子会顺顺利利,万事胜意,生活明朗-----------林辞忧 

前言:

在C/C++中,对于要开辟和释放动态的内存空间,在C语言中常常使用malloc,calloc,realloc,free四大函数来完成,而在C++中就会使用new和delete来完成动态内存空间的申请释放,而C++兼容C语言所以也可以使用四大函数,但注意free和delete不能混着用,尽量匹配使用的

一:C语言中区域划分的回顾及各个变量存在的位置

1.经典例题

2.C/C++中内存区域的划分 

二:C++内存管理方式  new delete操作符

1.对于内置类型

我们可以发现对于malloc和new申请的空间都不会完成初始化,所以对于内置类型new和malloc差不多,那么在C中要想完成初始化的话,就得使用calloc函数,C++中也可以完成初始化 

开辟多个并初始化 

2.对于自定义类型 

三:operator new和operator delete函数 

1.new和delete的底层实现原理

1.new和delete是用户用来动态内存申请和释放的操作符,operator new和operator delete是系统提供的全局函数,而new在底层是调用operator new全局函数来实现动态申请空间的,delete在底层是调用operator delete 全局函数来实现动态内存空间的释放的

2.operator new全局函数:该函数实际是通过malloc来申请空间的,当malloc申请空间成功时直接返回;申请失败时抛异常

3.operator delete全局函数是通过free来释放空间的

2.new 和delete对内置类型和自定义类型处理的底层原理

1.对于内置类型

malloc free和 new delete基本相同,不同的是 new delete申请和释放的是单个元素的空间,new[],delete[]申请的是一块连续的空间,new失败时抛异常,而malloc失败时返回NULL

2.对于自定义类型
1.new的原理

       1.调用operator new函数申请空间

       2.在申请空间时自动调用构造函数

2.delete的原理

1.调用operator delete函数释放对象的空间

2.在空间上执行析构函数,完成对象中资源的清理工作

3.new[N]的原理

1.调用operator new[]函数,在operator new[]函数中调用N次operator new函数完成N个对象空间的申请

2.在申请的空间上执行N次构造函数

4.delete[]的原理

1.在释放的对象上调用执行N次析构函数,完成N个对象中的资源清理工作

2..调用operator delete[]函数,在operator delete[]函数中调用N次operator delete函数完成N个对象空间的释放

四:定位new表达式(placement-new)

1.概念

定位new表达式是在已分配的原始内存空间中调用构造函数初始化一个对象

定位new表达式在实际中一般是配合内存池使用的,内存池的内存是由操作系统的对上申请的,内存池分配的内存没有初始化 ,如果是自定义类型就可以使用定位new表达式调用构造函数初始化

五:malloc/free和new/delete的区别 

共同点:都是从堆上申请空间,并且需要用户手动释放

不同点:

1.malloc /free是函数,new/delete是操作符

2.malloc申请的空间不会初始化,new可以初始化

3.malloc申请空间时,需要手动计算空间大小并传递,new只需在其后跟上空间的类型即可,如果是多个对象,[]中指定对象的个数即可

4.malloc的返回值为void*,在使用时必须强转,new不需要,因为new后跟的是空间的类型

5.malloc申请空间失败时,返回的是NULL,因此使用时必须判空,new不需要,但是new需要捕获异常

6.申请自定义类型对象时,malloc/free只会开辟空间,不会调用构造函数与析构函数,而new在申请空间后会调用构造函数完成对象的初始化,delete在释放空间前会调用析构函数完成空间中资源的清理

http://www.yayakq.cn/news/885309/

相关文章:

  • 网站开发与推广方向噼里啪啦免费观看高清
  • 连云港网站推广电子版简历
  • 如何在建设银行网站申购纪念币个人网页样式
  • 高端网站制作公图片优化软件
  • 建设大学网站费用公司网站制作制作
  • 工业设计网站知乎如何优化网站图片
  • 网站数据库修改密码要怎么做推荐几个适合晚上看的2021
  • 网站正在建设中热怎么查网站到期时间查询
  • 最炫的网站软件商店oppo官方下载
  • 网站页面统计代码是什么意思网络营销的概念及特征
  • 新民网站建设价格咨询个人免费建网站方法
  • 汕头 网站设计网站什么时候做等保
  • 湖南手机版建站系统信息个人网页设计html代码实现
  • 网站水印设置作教程免费下载ppt课件软件
  • 两学一做注册网站吗北京 网站建设 公司
  • 网站建设太金手指六六六wordpress批量导入文章
  • 网站建设是怎样的建设网站的费用属于
  • 移动端网站和微信网页设计wordpress作品集
  • wap网站开发公司做网站有没有前途
  • 网站备案名称中国开头WordPress投票主题系统
  • 哪个兄弟来个直接看的网站wordpress文章不能分段
  • 深圳做网站佰达科技二十七无锡网络优化推广公司
  • 网站根目录是什么意思黄页网站建设黄页网站建设
  • 重庆一般做一个网站需要多少钱智慧团建密码是什么
  • 网页设计与制作教程英语网站优化过度的表现
  • 甘肃省建设工程安全质量监督管理局网站做阿里巴巴网站电话
  • 中国城乡住建部建设部网站佛山做网站的公司哪家好
  • 成都网站制作028net定制营销型网站制作
  • 网站建设培训简报wordpress图片自动alt
  • 抄袭网站后台会侵权吗南京网络推广平台