vector :: max_size的实际用途

时间:2012-03-26 05:46:38

标签: c++ stl vector

question让我想到了max_size课程中的vector方法。很明显,实际上矢量中包含的元素数量将比max_size返回的元素数量少得多。所以我想知道这会有用吗?有线索吗?

3 个答案:

答案 0 :(得分:7)

它确实不是很有用。

唯一的理论用法是检查如果你需要一个大于max_size()的容器,你就会遇到麻烦。但是,当您将数据库服务器的端口考虑到微波炉时,您可能已经意识到了这一点。

委员会曾考虑改进功能,但没有发现它有用,值得改变:

  

max_size()对很多事情没有用,现有的措辞对于max_size()可以用于的少数情况来说足够明确。改变现有措辞的尝试都没有改进。

http://www.open-std.org/jtc1/sc22/wg21/docs/lwg-closed.html#197

答案 1 :(得分:1)

我认为它很有用的情况很少见,但你可能会遇到需要一个非常大的索引的情况。例如,您可能有一个索引数组,并且您希望使用无法使用的索引值对其进行初始化,表明尚未确定这些索引。

答案 2 :(得分:0)

只是告诉你可以在环境中的向量中存储多少元素。它在嵌入式环境中可能很重要。