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

版面布局网站的域名和所采用的版面布局形式上海高凡猎头公司

版面布局网站的域名和所采用的版面布局形式,上海高凡猎头公司,在服务器做网站,临海网站建设0、前言 C语言定义了两个运算符来分配和释放动态内存。运算符new分配内存,delete释放new分配的内存。 1、new动态内存的分配 1.1、new动态分配和初始化对象 1)、new内存分配 在自由的空间分配的内存是无名的,new无法为其分配的对象…

0、前言

        C++语言定义了两个运算符来分配和释放动态内存。运算符new分配内存,delete释放new分配的内存。

1、new动态内存的分配

1.1、new动态分配和初始化对象

        1)、new内存分配        

        在自由的空间分配的内存是无名的,new无法为其分配的对象命名,而是返回一个指向该对象的指针。

int* pi = new int;//pi指向一个动态分配的,为初始化的无名对象。

        在默认的情况下,动态分配的对象是默认初始化的,这意味着内置类型或组合类型的值将是未定义(),而类类型对象将用默认构造函数进行初始化。

	std::string* ps = new std::string;//初始化为空的stringint* pi = new int;//pi指向未初始化的int

        2)、初始化对象   

        可以用直接初始化来初始化一个动态分配的对象,用圆括号或者列表初始化(花括号):

    int* pi = new int(1024);//pi指向对象的值为1024std::string* ps = new std::string(10, '9');//*ps 得值为"9999999999"//vector指针int类型的对象有10个元素,值为0-9std::vector<int>* pv = new std::vector<int>{ 0,1,2,3,4,5,6,7,8,9 };

        动态分配的对象值初始化,在类型名之后跟一对空括号即可: 

	int* pi1 = new int;//默认初始化;*pi1的值未定义int* pi2 = new int();//值初始化为0;*pi2为0std::string* ps1 = new std::string;//默认初始化为空stringstd::string* ps2 = new std::string(); // 值初始化为空string

        当提供括号包围的初始化器,可以用auto,但是只有当括号仅有单一初始化器是才可以用auto。

    auto p1 = new auto(obj);//p1指向一个于obj类型相同的对象,该对象用obj进行初始化auto p2 = new auto{a, b, c};//错误,括号中只能有单的初始化器

1.2、动态分配的const对象

        用new分配const对象是合法的。

	//分配并初始化一个const intconst int* pi = new const int(1024);//分配并默认初始化一个const的空stringconst std::string* ps = new const std::string;

        一个动态分配的const对象必须进行初始化。对于一个定义了默认构造函数的类类型,其const动态对象可以隐式初始化,而其他类型的对象就必须显示式初始化。由于分配的对象是const,new返回的指针是一个指向const的指针。

1.3、内存耗尽

        在默认情况下,如果new不能分配所要求的内存空间,它会抛出一个类型为bad_alloc的异常,可以改变使用new的方式来阻止它抛出异常。

​​​​​​​    int* p1 = new int;//如果分配失败,new抛出异常bad_allocint* p2 = new(nothrow) int;如果分配失败,new返回一个空指针

        第二种的形式为定位new,定位new允许我们向new传递额外的参数,其中bad_alloc和nothrow都定义在头文件new中。

2、delet释放动态内存

为了防止内存耗尽,在动态内存使用完后,必须将其归还给系统,通过delete表达式来将动态内存归还系统。delete表达式接受一个指针,指向我们想要释放的对象。

delete p1;//p1必须指向一个动态分配的对象或一个空指针

        delete表达式执行两个动作:销毁给定的指针指向的对象;释放对应的内存。

2.1、指针值和delete

2.2、动态对象的生存期

2.3、delete之后重置指针值

http://www.15wanjia.com/news/193350.html

相关文章:

  • 站长之家源码之家东莞有限公司seo
  • 建设银行网站查询工资网站建设关键词优化价格
  • 东莞政务网站建设方案郑州做优惠券网站的公司
  • 36 氪 网站如何优化上海珍岛做网站怎么样
  • 永嘉网站建设几王占山图片
  • 企业网站建设请示嘉兴互联网公司
  • 网监备案网站做设计有哪些地图网站
  • 网上做兼职正规网站漳州建设局网站
  • 河南网站建设公司|河南网站建设价格费用域名服务商有哪些
  • 包小盒设计网站官网制作相册小程序
  • WordPress5分钟建站网络营销论文1500字
  • sql网站源码quick chat wordpress
  • 高唐网站建设公司广州新塘网站制作推广
  • 易动力建设网站怎么样西安企业网站建设代理机构
  • 网站建设0doit优化20条措施
  • 蓬莱做网站联系电话网页设计与制作教程 pdf下载
  • 娄底市城乡建设局网站网站招工费怎么做会计分录
  • 南京做网站南京乐识权威wordpress 注册邮箱验证
  • 浙江省建设建材工会网站汕头网站网店建设
  • 素材网站 源码做资源网站赚钱吗
  • 网站建设系统开发wordpress 标签 结构
  • 比较好的购物网站手机网站做多宽
  • 企业品牌网站建设报价网站后台后缀名
  • 成都logo设计公司seo的重要性
  • 做轻时尚的网站饮品店网站模板
  • 怎么做直播网站超管关于药品网站建设策划书
  • 浙江网站建站阳江网络公司
  • 株洲定制网站建设哪里有网站设计的公司
  • 怎么在广西建设厅网站注销c证平面设计作品图片大全
  • 做盗版视频网站网络营销师官网