.
和->
都是C++成員運算符,主要用於引用類、結構和共用體的成員。
A.B
:A是對象或者結構體,B是A的成員A->B
:那麼A爲指針,->
用於成員提取,提取A中的成員B即A->B
,注意A只能是指向類、結構、聯合的指針,A->B
即(*A).B
簡記:.
用於提取實際對象,->
與指針對象的指針一起使用
例1:
struct pizza
{
string name;
};
pizza * company = new pizza[3];
company[0]->name = "test1"; //編譯報錯
company[0].name = "test2"; //編譯通過
例2:
class A
{
public:
int a = 0;
};
int main()
{
A b;
A *p = &b;
b.a; //類類型的對象訪問類的成員
p->a; //類類型的指針訪問類的成員
}
參考文獻:
- https://blog.csdn.net/qq_40213457/article/details/80723899
- https://www.zhihu.com/question/49164544
- https://blog.csdn.net/u013719339/article/details/80611509