#include<iostream>
#include<string>
using namespace std;
int main(){
string str1 = "hello";
//string str = str1+",";
//cout<<str<<endl;
for(string::size_type s=0;s!=str1.size();s++)
cout<<str1[s]<<endl;
return 0;
}
將string::size_type改成int就不行了。
string::size_type的具體類型我們不知道,它是一個unsigned型,size_type所能存儲的長度是int型的兩倍。
PS:在定義用作索引的變量時,最好也定義成string::size_type型的,當然,這邊的string可以換成任意的數據類型,比如vector<int>;
數據類型::size_type也可以用來做循環條件。C++程序員在判斷循環條件時,應該習慣使用!=作爲循環判斷,而不是用<來判斷。