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

做网站如何寻找客源烟台seo网络推广

做网站如何寻找客源,烟台seo网络推广,织梦网站中的对话框怎摸做,免费云服务器哪家好用点啊使用std::make_shared相比于直接使用new和std::shared_ptr构造函数在内存分配和管理方面更为高效,主要原因如下: 内存分配效率 std::make_shared通过一次内存分配来同时分配控制块(用于引用计数等)和对象的内存。这种方式减少了…

使用std::make_shared相比于直接使用newstd::shared_ptr构造函数在内存分配和管理方面更为高效,主要原因如下:

内存分配效率

std::make_shared通过一次内存分配来同时分配控制块(用于引用计数等)和对象的内存。这种方式减少了内存分配的次数,提高了效率。

auto sp = std::make_shared<int>(10);

这里,std::make_shared一次性分配了包含控制块和int对象的内存。

直接使用newstd::shared_ptr构造函数

直接使用newstd::shared_ptr构造函数通常需要进行两次内存分配,一次用于对象本身,另一次用于控制块。

std::shared_ptr<int> sp(new int(10));

这里,new int(10)分配了对象的内存,然后std::shared_ptr构造函数再分配控制块的内存。

内存局部性

由于std::make_shared将对象和控制块分配在一起,这些内存通常是连续的,能够更好地利用CPU缓存,提高程序的运行效率。

异常安全性

使用std::make_shared能够确保在对象构造期间如果抛出异常,不会导致内存泄漏。因为对象和控制块的内存是在一次操作中分配的,如果构造对象时抛出异常,分配的内存会自动释放。

auto sp = std::make_shared<int>(10); // 如果在构造int对象时抛出异常,内存会被自动释放

而使用newstd::shared_ptr构造函数时,如果在对象构造期间抛出异常,可能会导致内存泄漏,因为new分配的内存不会被自动释放。

std::shared_ptr<int> sp(new int(10)); // 如果在构造int对象时抛出异常,new分配的内存不会被自动释放

总结

std::make_shared在内存分配和管理方面更为高效的原因包括:

  1. 通过一次内存分配同时分配控制块和对象的内存,减少了内存分配的次数。
  2. 更好的内存局部性,能够更有效地利用CPU缓存。
  3. 提供更好的异常安全性,防止在对象构造期间发生异常时导致的内存泄漏。
http://www.tj-hxxt.cn/news/61143.html

相关文章:

  • 最全的网站大全网络营销策略案例分析
  • php 网站版面素材百度输入法下载
  • wordpress功能主题seo从入门到精通
  • 房屋装修网站模板seo优化常识
  • 郑州 网站 公司免费建立个人网站凡科
  • 找网站公司做网站爱站数据
  • 竹子建站下载怎么查百度搜索排名
  • 中国建设银行大学生招聘信息网站免费行情软件网站下载大全
  • 新手做哪类网站建网站设计
  • 正规小说分销平台pc网站优化排名
  • 苏州 手机网站今日头条站长平台
  • 4399网页seo新手入门教程
  • 设计教程网站免费友情链接网站
  • 求委托私人做网站广告联盟app下载赚钱
  • 成都没有做网站的公司餐饮营销手段13种手段
  • 做前端网站考虑兼容分辨率百度手机助手app官方下载
  • wordpress 4.0 主题windows优化大师兑换码
  • 做网站做生意小程序拉新推广平台
  • 企业起名大全参考哈尔滨网络推广优化
  • 哪有做外单的图片素材网站哪家网络公司比较好
  • 网站建设的流程图示今日国内新闻头条大事
  • 建设银行香港招聘网站网络软文范例
  • 休闲食品网站建设国际军事最新头条新闻
  • 易语言做网站登录免费网站友情链接
  • 咸阳做网站价格关键词优化排名详细步骤
  • 网站建设学习步骤网站优化 福州
  • 代刷网可以做网站地图口碑营销的名词解释
  • 更换网站服务器35个成功的市场营销策划案例
  • 美国做旅游网站seo营销技巧
  • 建一个类似亨物说网站建设费用长沙关键词优化平台