关于C++中用两个迭代器方式初始化string的知识
2015-07-05 11:53
295 查看
[code]string(iter1, iter2);
第一点:两个迭代器必须指向同一个容器。
第二点:iter2必须>=iter1。
第三点:如果iter1等于iter2,那么结果为空[]
另外一个比较特殊的关于反向迭代器的非常有用知识点,用如下程序来说明:
[code]int main() { string str1 = "abc"; cout << "str1.rend() - str1.rbegin() is " << str1.rend() - str1.rbegin() << endl; cout << "str1.rbegin() - str1.rend() is " << str1.rbegin() - str1.rend() << endl; cout << "*str1.rbegin() is " << *str1.rbegin() << endl; cout << string(str1.rbegin(), str1.rend()) << endl; //cout << *str1.rend() << endl; error //cout << string(str1.rend(), str1.rbegin()) << endl; error getchar(); }
output is
[code]str1.rend() - str1.rbegin() is 3 str1.rbegin() - str1.rend() is -3 *str1.rbegin() is c cba
相关文章推荐
- 算法导论学习---红黑树详解之插入(C语言实现)
- C++关于磁盘的数据的操作
- 【C语言】编写函数实现库函数atof
- 【C语言】编写函数实现库函数atoi,把字符串转换成整形(考虑数字过大)
- VC++6.0 Debug单步调试简单入门
- C++ traits技术
- C语言中全局变量、局部变量、静态全局变量、静态局部变量的区别
- 重温《C++ Primer》笔记九 const形参小结
- 《C语言及程序设计》实践参考——链表版通信录
- 《C语言及程序设计》实践参考——改造链表
- C++ 对象的定义
- C++ 函数适配器
- 《C语言及程序设计》实践参考——拆分链表
- C++ Primer学习笔记(10)——如何读写文件
- 《C语言及程序设计》实践参考——链表的合并
- 《C语言及程序设计》实践项目——链表初步
- visual C++ 2003
- 《C语言及程序设计》程序阅读——链表初步
- c++ primer 学习笔记 3 变量与基本类型
- c++读书笔记——类的定义