3

可能重复:
unsigned int 与 size_t

当我需要存储某些东西的大小(通常是用 分配的东西new)时,我总是将它存储在unsigned int. 然而,浏览一些代码,我看到了size_t使用。据此,几乎很少使用。

  • size_tC++的意义何在?
  • 为什么那些使用它的少数函数不直接使用 anunsigned int呢?
  • 它应该如何在新代码中使用?
4

1 回答 1

4

你可以有一个数组,它的大小和索引可以超过 int 的范围,因为 int 只能保证 16 位。现在使用 size_t 的实用性相当低,但将来可能会变得更加重要。例如,在为 64 位编译的 MSVC 上,我可以有一个类,其实例大于 4GB。当然,我希望在实用性上,CRT 不会处理那么大的尺寸,但标准并不关心这一点。

于 2011-01-13T20:59:21.363 回答