【共读Primer】26.[4.6]成员访问运算符 Page133

成员访问运算符:

. 点运算符

-> 箭头运算符

 

string s1="a string", *p = &s1;
auto n = s1.size();    //     运行string对象s1的size成员
n = (*p).size();         //     运行p所知对象的size成员
n = p->size();           //     等价于(*p).size()

因为皆因用运算符的优先级低于点运算符,所以执行解引用运算的子表达式两端必须加括号。

如果不加括号则含义会不同

// 含义是:运行p的size成员,然后解引用size的结果
*p.size();   // 错误: p是一个指针,它没有名为size的成员

 

posted @ 2018-08-19 11:31  chattyku  阅读(140)  评论(0编辑  收藏  举报