vector::size_type什么意思

谁学逆向工程 2010-03-13 08:20:53
vector<int>::size_type是什么意思
...全文
1562 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Julykey 2010-03-13
  • 打赏
  • 举报
回复
它是STL中的自定义类型,用来表示容器的大小。一般你可以把他转换成int类型的,
如vector<int> ivec(10);int x=(int)ivec.size();
5L的for循环for(vector<int>::size_type ix = 0; ix != ivec.size(); ix++)
就可以改成for(int i=0;i<x;i++)
fsagd 2010-03-13
  • 打赏
  • 举报
回复
调用vector容器中的sizetype字段,而sizetype字段被定义为unsigned int ,相当于在调用vector<int>::size_type时和vector<int>::iterator差不多
elegant87 2010-03-13
  • 打赏
  • 举报
回复
unsigned int ,size_t 一样的。
作为遍历时候表示非负整数。
boych 2010-03-13
  • 打赏
  • 举报
回复
举个简单的例子

#include <iostream>
#include <cstdlib>
#include <vector>
using namespace std;
using std::vector;

int main()
{
vector<int> ivec(10);
for(vector<int>::size_type ix = 0; ix != ivec.size(); ix++)
ivec[ix] = 1;
for(vector<int>::size_type ix = 0; ix != ivec.size(); ix++)
cout << ivec[ix] << " ";
cout << endl;

system("pause");
return 0;
}
//vector<int>::size_type ix = 0;定义一个size_type类型的变量,该变量作为vector下标,
//用于向ivec对象中循环读取或写入int型的元素。

yyg990441 2010-03-13
  • 打赏
  • 举报
回复 1
给LZ个示意代码:

template<class T>
vector{
public:
typedef unsigned int size_type;
...
};
int main(){
vector<int>::size_type a;//在这里完全等价于unsigned int a;
}

以上用vector<int>::size_type 而不用unsigned int是为了对外隐藏实现细节
浪客 2010-03-13
  • 打赏
  • 举报
回复
自定义类型,用来表示容器大小。
谁学逆向工程 2010-03-13
  • 打赏
  • 举报
回复
那个是成员函数?
cismylife 2010-03-13
  • 打赏
  • 举报
回复 3
size_type 相当于 unsigned int类型
使用size_type 主要是为了适应不同的平台
int 类型大小会根据不同平台而不同

65,189

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧