转自郭春阳,总结一下。
vector作为数组的替代品,是相当好用的。数组有下标定位,Vector同样有定位。
1。iterator迭代器
begin(): 获取vector第一个元素的迭代器。
end():获取最后一个元素的下一个位置,就是空位置。
优点:end()在循环时方便使用,只要没到end()则可一直访问值
不必对空间采用特殊的处理,空区间就是begin()等于end()
例:
vector <int> num(20);
for(vector<int>iterator ite=num.begin(); iter != num.end(); ++iter)
{
cout << *iter <<endl;
}
or
for(int i=0; i!=num.size(); i++)
{
num[i] = i;
}
2.reverse_iterator迭代器
与上述相反
rbegin():获取第一个元素的前一个元素,也是空位置。
rend():获取最后一个元素的位置。
3.数组与字符串
基本函数:strlen()[求长度],strcpy()[复制字符串],strcmp()[比较字符串大小],strcat()[连接字符串]
C++的string对这些会出现的隐患给屏蔽了,srting使用size方法,对string直接操作。也有find函数,使用size_type类型等。
a.string 和 string 可以相加
b.string 和 char*可以相加
c.char*和 string 可以相加
d.char*和 char*不可以相加!