[疑问] 为何STL的动态数组用vector这个名称?该怎么解决
[疑问] 为何STL的动态数组用vector这个名称?
按常理来说动态数组应该用std::array这样的名称才对 但为何偏偏使用vector(向量)这个单词
另外vector这个单词也可以用来代表数学中的三维向量 不少3D图形库都是vector来指代三维数学向量 而STL却偏偏占用了这个名称 这样不是容易引起误会吗
这个问题一直困扰小生很长时间了 一直都找不到合理解释 我估计不少刚接触STL的人都会面对这个陌生的问题
请问这是不是STL早期设计上的BUG? 还是有人故意而为之 是否有资深人士站出来解释下?
------解决方案--------------------
人家设计的本来就是向量,谁让你误理解为数组的呢。
------解决方案--------------------
谁跟你说vector是纯动态数组来的?
------解决方案--------------------
好吧我也理解成数组了,虽然知道他是向量的意思。。
------解决方案--------------------
好吧, 又遇到抠字眼的了。。。。。
------解决方案--------------------
因为array和固定数组概念混淆
所以用vector
------解决方案--------------------
有它自己的算法实现的
------解决方案--------------------
新的标准库里已经有std::array
array一般固定大小,而vector显然不是
按常理来说动态数组应该用std::array这样的名称才对 但为何偏偏使用vector(向量)这个单词
另外vector这个单词也可以用来代表数学中的三维向量 不少3D图形库都是vector来指代三维数学向量 而STL却偏偏占用了这个名称 这样不是容易引起误会吗
这个问题一直困扰小生很长时间了 一直都找不到合理解释 我估计不少刚接触STL的人都会面对这个陌生的问题
请问这是不是STL早期设计上的BUG? 还是有人故意而为之 是否有资深人士站出来解释下?
------解决方案--------------------
人家设计的本来就是向量,谁让你误理解为数组的呢。
------解决方案--------------------
谁跟你说vector是纯动态数组来的?
------解决方案--------------------
好吧我也理解成数组了,虽然知道他是向量的意思。。
------解决方案--------------------
好吧, 又遇到抠字眼的了。。。。。
------解决方案--------------------
因为array和固定数组概念混淆
所以用vector
------解决方案--------------------
有它自己的算法实现的
------解决方案--------------------
新的标准库里已经有std::array
array一般固定大小,而vector显然不是