猿问

'size_t'vs'container :: size_type'

是否有之间的差异size_tcontainer::size_type

我所理解的size_t是更通用的,可以用于任何size_types。

但是container::size_type针对特定种类的容器进行了优化?


芜湖不芜
浏览 503回答 3
3回答

哔哔one

标准容器限定size_type为一个typedef到Allocator::size_type(分配器是模板参数),其为std::allocator<T>::size_type被典型地定义为size_t(或兼容的类型)。所以对于标准情况,它们是相同的。但是,如果使用自定义分配器,则可以使用不同的基础类型。所以container::size_type最好是最大限度的通用性。
随时随地看视频慕课网APP
我要回答