1.只有vector和deque的迭代器提供算術運算 以及除 = 和 != 之外的比較操作
2.P312中
iter1 += iter2 ; iter1 -= iter2;
有誤 ,應改為 : iter1 += n; iter1 -= n;
3.
Code:
- #include <iostream>
- #include <string>
- #include <vector>
- #include <deque>
- #include <list>
- using namespace std;
- int main()
- {
- vector<string> vecstr(10,"love you");
- vector<string>::iterator it1 = vecstr.begin();
- vector<string>::iterator it2 = vecstr.begin() + 3;
- cout << it2 - it1 << endl;
-
- deque<string> deqstr(10,"love you");
- deque<string>::iterator itq1 = deqstr.begin();
- deque<string>::iterator itq2 = deqstr.end();
- cout << itq2 - itq1 << endl;
-
- list<string> lststr(10,"love you");
- list<string>::iterator itl1 = lststr.begin();
- list<string>::iterator itl2 = lststr.end();
- //cout << itl2 - itl1;*/
-
- for(vector<string>::iterator it = vecstr.begin(); it != vecstr.end(); ++it)
- {
- cout << it -> empty() << endl;
- }
-
- for(list<string>::iterator it = lststr.end(); it != lststr.begin();)
- {
- cout << *(--it) << " ";
- }
-
- cout << endl;
-
- while(itl1 != itl2)
- {
- cout << *(--itl2) << " ";
- }
-
- }