c++学习笔记九

25、堆对象
a.在程序中运行过程中根据需要可以随时建立或删除的对象。
b.堆对象运算符:new、delete
c.new运算符  
  new创建数组:
      new <类型名>  [<算术表达式>]
例如:
A *ptr;
ptr = new A[5];
  1.使用new创建对象数组或一般数组时,不能为该数组指定【初始值】,
  其初始值为【缺省值】。
  2.使用new[]创建对象数组时,类中必须说明缺省构造函数;
  
d.delete运算符
  功能:删除用new创建的对象或一般类型的指针;


注意事项:
  1.必须用于由运算符new返回的指针;
  2.该运算符也适用于空指针(即其值为0的指针);
  3.对一个指针只能使用一次delete操作;
  4.指针名前只用一对方括号符([]),并且不管所删除数组的维数,忽略
    方括号内的任何数字;


#include"aa.h"
void main()
{
AA *ptr;
ptr = new AA[2];
ptr->Set(1,2);
ptr[1].Set(5,6);
ptr[0].Print();
ptr[1].Print();
delete[] ptr;
}
总结:
    a.new相当于c语言中的malloc函数,delete相当于free。
    b.ptr是一个对象指针,而ptr[i]为一个对象,所以取成员时用->。
   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值