解引用运算符的优先级低于点运算符。
练习4.20
#include <iostream>
using namespace std;
#include <string>
#include<vector>
int main()
{
vector <int> v = { 1,5,10};
auto iter = v.begin(); //iter的类型是vector<int>::iterator
*iter++; //等价于*(iter++)
cout << *iter << endl; // 5
(*iter)++;
cout << *iter << endl; //5+1=6
cout << ++ * iter << endl; //7
vector <string> s = { "","an" }; //
auto iter2 = s.begin();
//if(*iter2.empty()) 错误,iter2是迭代器,没有成员
if ((*iter2).empty()) //第一个元素是空串为真
cout << "ok" << endl; //ok
if (iter2->empty())
cout << "ok" << endl; //ok
if (iter2++->empty()) //iter2.empty()是否是空串 //迭代器移一位
cout << *iter2 << endl; //"an"
}