您的位置:首页 > 编程语言 > C语言/C++

DEBUG C++ ——size_t类型!=int

2008-06-13 15:42 127 查看
如下代码:

string sa[6]={"a1","b2","c3","d4","e5","f6"};

vector<string> svec(sa,&sa[6]);//赋值

cout<<"The value of sa[3]= "<<sa[3]<<endl;//True

cout<<"The value of svec[3]="<<svec[3]<<endl;//Error!!

我看了很久没有发现这个错误的根源是什么。难道vector没有索引操作符?

后面一想,不对啊,vector作为顺序容器,应该具备与string对象的一些基本操作符。

后面一查,原来在vector里面的索引值必须是size_t类型,修改程序如下,即可运行!

size_t index=3;

cout<<"The value of svec[3]="<<svec[index]<<endl;//True!!

所以大家在以后的操作中一定要小心小心再小心,不要像我这样。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: