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

微信小程序代码生成器冯耀宗seo博客

微信小程序代码生成器,冯耀宗seo博客,wordpress syntaxhighlighter,农业方面的网站建设升级动态内存 在C/C程序中(线程)栈空间是有限的,大部分变量使用的都是动态分配来的堆内存,这些动态申请来的堆内存是需要开发者通过代码去自行管理的。如何管理好这些动态申请来的内存,是C/C开发中的一个重点难点问题。 m…

动态内存

在C/C++程序中(线程)栈空间是有限的,大部分变量使用的都是动态分配来的堆内存,这些动态申请来的堆内存是需要开发者通过代码去自行管理的。如何管理好这些动态申请来的内存,是C/C++开发中的一个重点难点问题。

malloc是开空间

calloc开空间+初始化

realloc在原来的空间增加空间(原地扩+异地扩)

int* p1=new int 申请一个int空间

int* p2=new int[10] 申请十个int空间

int* p3=new int(10) 申请一个int空间,并初始化

int* p4=new int[10]{1,2,3,4}申请10个int空间,并依次初始化,其余置0 c++11才支持

delete p1

delete[] p2

delete p3

delete[] p4

对于内置类型而言,用malloc和new,除了用法不同,其余都是相同

他们的区别在于自定义类型

malloc只开空间,new开空间+调用构造函数

new、delete与malloc、free的区别在于new会调用构造函数,delete会调用析构函数,而malloc、free不会

new先开自定义类型空间,再调用构造函数,对其初始化

delete先清理初始化的空间,再对自定义类型进行释放

失败的处理方式不同

malloc失败,返回空指针

new失败,抛异常

operator new与malloc的功能是一样的,但operator new失败会抛异常

operator new是封装了malloc加了个抛异常,让new去调用他

new的底层原理

去调用call operator new   call  operator new

去调用对应的构造函数  call stack::stack

new=operator new+构造函数

自定义类型

new原理

调用operator new函数申请空间,在申请空间上执行构造函数,完成对象的构造

delete原理

在空间上执行析构函数,在operator delete函数释放空间的空间

new[]原理

1.调用operator new[]函数,在operator new[]中实际调用operator new函数完成N个对象空间申请,在申请的空间上执行N次构造函数

delete原理

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

2.调用operator delete[]释放空间,实际在operator delete[]中调用operator delete来释放空间

定位new表达式

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

stack obj=)stack* operator new(sizeof(stack))

new(obj) stack(4)

使用场景,一般配合内存池使用,因为内存池分配出来的空间内存没用初始化,所以如果是自定义类型的对象,需要使用定位new显示调用的构造函数进行初始化

malloc、free和new/delete的区别

相同

malloc/free和new/deletede共同点是:都是从堆山申请空间,并且需要手动释放

不同

malloc和free是函数,new\delete是操作符

malloc申请的空间不会初始化,new可以调用构造函数初始化

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

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

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

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

内存泄漏

内存泄漏是指针丢了找不到,找不到指针释放不了空间。

http://www.shuangfujiaoyu.com/news/7510.html

相关文章:

  • 网站建设备案信息网站文章优化技巧
  • 医院网站 功能网络销售平台有哪些
  • 做网站如何赚钱国外免费域名申请
  • 河南住房与城乡建设部网站兰州seo新站优化招商
  • 做哪一类网站容易有排名搜索引擎seo
  • 网站移动端seo2022年明星百度指数排行
  • 跨国购物网站建设费用网站怎么做收录
  • 做集团网站百度人工智能
  • 鞍山网站开发网络营销环境宏观微观分析
  • 抚州公司做网站企点官网
  • c 新手一个人做网站如何做广告宣传与推广
  • 免费外贸网站建设seo网站监测
  • 用php制作动态网站seo查询工具网站
  • 做图片的网站网店推广常用的方法
  • 用360打开自己做的网站有广告长春seo网站优化
  • 济南学网站建设哪里好seo视频教学网站
  • 最新网站建设常见问题百度新闻网
  • 完善集团网站功能建设百度指数查询官方下载
  • 网站想换个风格怎么做宁波seo
  • 辽宁东方建设工程有限公司网站seo关键词排名优化费用
  • 大渡口网站建设哪家好广告宣传费用一般多少
  • 支部网站建设排名优化软件点击
  • 网站收录问题爱站网的关键词是怎么来的
  • 花生壳一个端口做网站seo管理工具
  • 企业网站建设的必要性十大搜索引擎排名
  • wordpress固定链自定义结构杭州seo排名费用
  • 做企业网站不好混优化营商环境条例全文
  • 北太平庄做网站公司全国疫情高峰感染高峰进度
  • 淘宝运营跟做网站哪种工资高百度怎么推广网站
  • 广州金将令做网站怎么样如何建立个人网站的步骤