Size _ t 应该在标准库的头中定义。根据我的经验,它通常只是一个对无符号 int 的 typedef。但重点是,不一定非要这样。
像 size _ t 这样的类型允许标准库供应商在适合平台的情况下自由更改其基础数据类型。如果假设 size _ t 始终是无符号 int (通过强制转换等) ,那么将来如果供应商将 size _ t 更改为64位类型,则可能会遇到问题。由于这个原因,对此或任何其他库类型进行任何假设都是危险的。
std::size_t
...
Defined in header <cstddef>
Defined in header <cstdio>
Defined in header <cstring>
Defined in header <ctime>
Defined in header <cwchar>