vector是STL里面的标准模板,简单的说就是一个变长数组。
在使用vector的时候,有时能带来编程上的方便,但是如果使用不当,则会带来一些麻烦或者隐藏一些错误。
任何系统都不会允许数据无限增加。任何数据要么有一个明确的最大数量,要么有一个隐性的的最大数量。
如果需要存放的元素有一个不太大的最大值数量,那么大多数时候使用数组会更加简洁。因为vector使用起来注意事项太多,即使是熟练的人也很容易出现内存失效之类的错误,这无形中增加了系统维护成本。
适合使用vector的情况,是我们预期数据元素有一个很大的最大数量,但是通常是一个比较小的数量。比如从系统结构设计方面,我们允许数据数量最多可以有1000000个,但是通常不会超过100个。那么这时候使用vector就可以一方面简化编程一方面节省内存。
我个人对于使用vector是毫无热情的。