2 wyt734933289 wyt734933289 于 2015.07.18 11:17 提问

关于二维数组和vector的关系

vector p[MAX],像这样定义vector和定义一个二维数组有什么不同,有什么好处或者坏处么?

6个回答

Evankaka
Evankaka   Ds   Rxr 2015.07.18 11:28
已采纳

vector是线程安全的是,这是它最大的优点。坏处就是它的速度肯定会比普通的二维数组慢。
所以如果这里变量不是多线程用到的,最好不用vector.

91program
91program   Ds   Rxr 2015.07.18 11:53

vector 是动态的,适用于数据量大小不定的情况
二维数据,定义了就固定了,无法适应动态个数的情况。如果数据的个数能确定,用二维数组当然好过 vector 。

CSDNXIAOD
CSDNXIAOD   2015.07.18 11:20

C 二维数组与指针的关系
vector动态二维数组
vector动态二维数组
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!

oyljerry
oyljerry   Ds   Rxr 2015.07.18 14:25

对于大多数使用情况,比如除非你需要对数组进行非常复杂运算,需要性能考虑。对二维数组做了很多特定处理。那么就直接用二维数组。

那么一一般情况下都用vector比较简单,它封装了各种函数,可以索引访问,动态插入,自动扩展空间。结合标准库算法,可以方便sort排序,合并。复制,拷贝。
vector也可以很轻松的进行二维,甚至多维嵌套,vector>

oyljerry
oyljerry 回复wyt734933289: 那一般数组更适合,你可以更精确控制
2 年多之前 回复
wyt734933289
wyt734933289 我是打ACM的,那一般用哪个
2 年多之前 回复
CodeHouse
CodeHouse   2015.07.18 15:22

现在一般C++程序员规范化是使用vector,不适用二维数组

GKatHere
GKatHere   2015.08.07 13:12

Robot是个什么东西。。。。。。

Csdn user default icon
上传中...
上传图片
插入图片