size_type和size_t的总结

来源:互联网 发布:淘宝评论怎么看不到 编辑:程序博客网 时间:2024/06/06 03:51

size_type:size_type是STL定义的,只在namespace std中有效

由string类类型和vector类类型定义的类型,用以保存任意string对象或vector对象的长度,标准库类型将size_type定义为unsigned类型

 

  string抽象意义是字符串, size()的抽象意义是字符串的尺寸, string::size_type抽象意义是尺寸单位类型

 

  string::size_type它在不同的机器上,长度是可以不同的,并非固定的长度。但只要你使用了这个类型,就使得你的程序适合这个机器。与实际机器匹配。

 

size_t:size_t是C++的一个标准的typedef.全局有效,定义在全局名称空间中

size_t是为了方便系统之间的移植而定义的。(它就是一个无符号整型)

在32位系统上定义为 unsigned int

在64位系统上定义为 unsigned long

 

更准确的说法是在32位系统上是32位无符号整型

在64位系统上是64位无符号整型

 

size_t一般用来表示一种计数,比如有多少东西被拷贝等。

sizeof操作符的结果类型是size_t,

该类型保证能容纳实现所建立的最大对象的字节大小。

 

它的意义大致是"适于计量内存中可容纳的数据项目的个数的无符号整数类型"。

所以,它在数组下标和内存管理函数之类的地方广泛使用

原创粉丝点击