存储string的size的操作结果变量必须为string::size_type类型——P73
2010-01-25 23:34
295 查看
#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++程序员在判断循环条件时,应该习惯使用!=作为循环判断,而不是用<来判断。
#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++程序员在判断循环条件时,应该习惯使用!=作为循环判断,而不是用<来判断。
相关文章推荐
- string对象的操作 string::size_type类型
- C++9.3容器定义的类型 size_type 、容器执行的操作 insert
- 判断变量的类型(typeof、instanceof、Object.prototype.toString)
- jquery判断变量类型typeof和Object.prototype.toString.apply()
- 基本数据类型,String、Integer等封装类,以及Class,三者在内存中是怎么存储的?对它们的操作机制又是什么样的?
- string::size_type类型
- string::size_type类型
- 黑马程序员--Java基础加强--17.利用反射操作泛型VI【泛型类型变量的语义】【GenericDeclaration接口】【泛型接口TypeVariable】【通过Class反射解析泛型类】
- string::size_type类型
- databinding异常Error:(250, 72) 错误: 找不到符号 符号: 方法 getResources() 位置: 类型为String的变量 type
- string::size_type类型
- 如果从函数中返回局部变量的地址,引用或者指针的形式,则变量类型必须是静态的或者常量,即不在栈中存储
- 关于vector.size()和string.length() 的返回类型 size_type
- Swift 的基本数据类型 常量和变量、String 的基本操作
- string::size_type 是什么定义类型?
- DataTable.Compute SUM 的计算列的DataType必须是数字类型,不可以是String
- 使用stringRedisTemplate操作redis hash结构数据只能存储String类型的问题
- PHP - Manual手册 - Function Reference函数参考 - Variable and Type Related Extensions变量和类型相关扩展 - Variable handling变量操作 - Variable handl
- JDBC操作存储过程错误:必须说明 'QUERYCHARGESTATWITHNETTYPE' 组件
- string::size_type类型