value_type和size_type,size_t

size_type和value_type只存在于STL中,他们并不是什么新的类型,只是普通类型的 typedef而已

size_type可以是一个无符号整形,它的大小与平台有关。在STL中使用size_type比使用unsinged兼容性更佳。在string中,size_type常用来表示字符串的长度,在vector中,常用来表示元素的个数.

value_type:STL是基于模板的。使用STL的时候,需要传入一个参数。那个参数的别名就是value_type 。。
定义如下:
template<typename T>
.....
typedef T value_type;

size_t 也是一个无符号整形,但是它是从C语言中继承过来的。所以在C++中它是通用的,不管是不是在STL中

你可能感兴趣的:(value_type和size_type,size_t)