new数组

new数组时,无法初始化(visual studio 6++)
1.一般数据类型数组:(正确示范)
int *ptr=new int [5]();
指给数组里所有值赋值0,但是我的vc6.0++就不行,出来还是随机值,就得手动赋值了
2.对象数组(正确示范)

Stu *ptr=new Stu[3];   

Stu是一个类,new对象数组不能够初始化,构造函数自动为其赋值,当然后续能改变值。要想对象能够初始化以不同数值,就不能new,要用如下方法:
Stu stu[3]{ stu("zhangna",'w',18), stu("liuyang",'m',19), stu("sunqian",'w',20) }
new和普通的直接定义对象有什么区别和联系呢?
在某个函数中如果new一个对象,这个对象将被存储在堆区,堆区的空间系统不会随意释放,当你下达命令(自己编写代码)才可以被释放。而在函数中直接定义对象,形如Stu stu1("",’ ',19);stu1将被存储在栈区,当函数进行完时空间自动释放,如果不通过指针或者传值传回主函数,你所存储的信息也将完全消失。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值