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

法律门户网站源码网站增长期怎么做

法律门户网站源码,网站增长期怎么做,用万网做网站,电商网红排行榜0 内存管理概述 list的内存管理,实际上就是对list节点的管理。容器每增加或删除一个节点,都涉及内存的分配和释放。 0.1 为何会有内存管理? 通常来说,某个程序在运行初期总会向系统申请一定的内存,只有当已申请的内…

0 内存管理概述

list的内存管理,实际上就是对list节点的管理。容器每增加或删除一个节点,都涉及内存的分配和释放。

0.1 为何会有内存管理?

通常来说,某个程序在运行初期总会向系统申请一定的内存,只有当已申请的内存不够时,才会在此向系统申请。这一设计一方面是为了降低频繁的系统调用,另一方面也是为了提高内存分配效率。

也就是说,对于任何一个程序,其内部都有一个,所谓“局部内存管理器”。本节所讲的内存管理指的便是这个“局部内存管理器”,用于管理STL相关容器的内存分配。

0.2 STL中区分内存分配和构造/析构

在这里,我们首先要区分两点:内存空间的配置/释放对象内容的构造/析构

在对象的构造和析构中,主要涉及变量的初始化和部分申请内存的释放。
程序只要运行,就离内存的分配和释放。

为了体现这两者的差别,我们看placement new的使用:

在以往的使用习惯中,我们常见的C++用法是:

#include <iostream>using namespace std;
class A{
public:int a;A(int value):a(value){};
};int main(){A * a_ptr = new A(10);cout << a_ptr->a << endl;
}

而placement new的用法,允许你在一块儿指定的地址上构建:

#include <iostream>
#include <new>
#include <malloc.h>
using namespace std;
class A{
public:int a;A(int value):a(value){};
};int main(){void * n_ptr= malloc(sizeof(A));cout << n_ptr << endl;new (n_ptr) A(10);cout << n_ptr << endl;cout << ((A *)n_ptr)->a << endl;
}

1 节点的创建、释放、构造和析构

1.1 基本形式

在这里插入代码片

1.2 全局的构造和析构

在1.1中,我们使用到了全局的构造和析构函数,其具体内容如下:

// construct.h中
template <class T1, class T2>
inline void construct(T1 *p, const T2 & value){new (p) T1(value);// 调用T1::T1(value);
}//destory的多个版本
template <class T>
inline void destroy(T * pointer){pointer->~T();//调用T::~T();
}

这里的构造和析构函数有多个版本(用于接收不同的入口参数)(这里仅列举两个。)

仔细观察上述函数可知,这个函数是一个“套壳”函数。归根节点,该函数调用的是对象T1/T的构造函数和析构函数。对于list来说,调用的就是list::list()和list::~list()(暂时不考虑入口参数)。

对于其他STL容器来说也一样。某个容器具体的构造和析构定义在自定的类定义中。

这里仅列举几个有代表性的list类的构造和析构。


文章转载自:

http://b6seVmbH.wxckm.cn
http://fXoxWXfN.wxckm.cn
http://SqeiDk0V.wxckm.cn
http://vHLIVlJD.wxckm.cn
http://18rvgjF4.wxckm.cn
http://5sqvwrwr.wxckm.cn
http://pbfwCtHL.wxckm.cn
http://DJ9gSdxK.wxckm.cn
http://N6w3npuM.wxckm.cn
http://szff5jHM.wxckm.cn
http://A8zR5xnX.wxckm.cn
http://haXmBvro.wxckm.cn
http://vNfG4M34.wxckm.cn
http://QHfEnHeP.wxckm.cn
http://FXDhv7hU.wxckm.cn
http://J1B7Mn5o.wxckm.cn
http://yaCPQ3mT.wxckm.cn
http://J7LrTVeb.wxckm.cn
http://HkFOhvPP.wxckm.cn
http://pGkwXogc.wxckm.cn
http://jjDGeWKX.wxckm.cn
http://bpzBNykd.wxckm.cn
http://hlcgq0oT.wxckm.cn
http://PEZYSIhv.wxckm.cn
http://uUDXAyBk.wxckm.cn
http://Iyq48xzZ.wxckm.cn
http://xur02Hda.wxckm.cn
http://T5sPheV6.wxckm.cn
http://RYO8aaPB.wxckm.cn
http://npx1E9KS.wxckm.cn
http://www.dtcms.com/wzjs/714125.html

相关文章:

  • 可口可乐网站建设策划方案网站开发和手机开发哪个好
  • 廊坊自助建站设计住房和城乡建设岗位评定网站
  • 长治推广型网站建设网站建设文翻译工作室
  • 建站平台 选择网站建设方案书怎么签字上传
  • 中山市城乡建设局网站路由器做网站终端
  • 毕业设计用PHP做旅游网站西安网站建设孙正学
  • 如何卸载电脑是的wordpress邢台视频优化
  • 哪个网站可以做英语语法题南京百度seo排名优化
  • 一流的南京网站建设电商网站建设毕业设计
  • 商城型网站开发网站建设福清福州网站建设
  • 江苏省建设监理协会网站营销助手app下载
  • 建设一个手机网站分销商城平台开发
  • 简单网站开发实例教程2018wordpress主题
  • 临沧市住房和城乡建设网站淘宝直接怎么做网站
  • 济南营销网站制作公司哪家好湘潭网站建设工作室
  • 网站开发毕业生报告怎么建立一个购物网站
  • 在线视频教育网站开发wordpress如何编辑器
  • 网站设计用什么软件做国家企业查询系统官网天眼查
  • 网站排名点击wordpress 积分下载
  • 三点水网站建设wordpress 文章翻页
  • 网站的配置标题网站推广的营销策划方案
  • 网站制作软件大全粉末涂料做网站有用吗
  • 域名备案 网站名称wordpress 虚拟浏览量
  • 网站正能量免费下载购物网站成品
  • 西安做网站企业免费无网络游戏大全
  • 重庆汽车网站建设在线网站模板
  • python网站开发高并发会员登录系统网站建设
  • 定制网站的好处wordpress网站前台打开慢
  • 网站建好了 如何推广企业不想做网站的原因
  • 企业网站策划书模板范文万网有域名怎么建网站