qq_21160863
諾呉
采纳率70.6%
2016-04-16 12:17

有关STL中的max_size()

已采纳

在STL中,像vector、list、string这些容器都含有max_size()这个函数,想请教一下,关于这个max_size()函数的值。在我机子上vector的max_size()=1073741823,list的max_size()=357913941,而string的max_size()=4294967294。。。请问这些值是固定的吗?? 为什么要设为这么大的值??是由电脑的配置决定的吗??? ***

谢谢。。。。****_

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

1条回答

  • caozhy 从今以后生命中的每一秒都属于我爱的人 5年前

    4294967294是2^32,也就是用一个int表示长度,能表示的最大值。
    1073741823是上一个值的1/4,如果有什么原因它需要的存储是前者的4倍的话,那么最大值就是1/4。
    这个应该是C++编译器/标准库规范/操作系统决定的, 不是电脑配置决定的。

    点赞 评论 复制链接分享

相关推荐