c++ new 和 vector

本文探讨了使用new操作符与vector容器在C++中分配内存的区别。通过具体实例展示了两者初始化不同数量和初始值的整型数组的过程,强调了vector在初始化灵活性方面的优势。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我们知道可以通过new操作符来创建新的对象或者动态分配一定的内存。同样vector也可以。

但是这两者是有一定区别的。

比方说我们现在需要设定一个数组,数组的大小为10,我们可以这样操作。

int *p1 = new int[10];  //开辟10个int的内存大小,不初始化,值是随机的。

// 或者 

 int *p1 = new int [10]();//开辟10int的内存大小,初始化值为int的默认值0,并且这里的括号只能为空,不能随便填写想初始化的值,否则导致编译错误。


还可以采用vector的方式


vector<int> data(10); //开辟10个初始化为0的vector<int>类型的 data;

还可以任意指定初始化的值,例如

vector<int> data2(10,99); //开辟10个初始化为99的vector<int> 类型的data2;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值