C++中运算符.和->的区别
符号.
和->
的作用和区别:
.(点)
运算符和->(箭头)
运算符用于引用类、结构和共用体的成员: 点运算符应用于实际的对象。箭头运算符与一个指向对象的指针一起使用。
- A.B则A为对象或者结构体;
点号(.):左边必须为实体。 - A->B则A为指针,->是成员提取,A->B是提取A中的成员B,A只能是指向类、结构、联合的指针;
箭头(->):左边必须为指针;
class A
{
public:
int a = 0;
};
int main()
{
A b;
A *p = &b;
b.a; //类类型的对象访问类的成员
p->a; //类类型的指针访问类的成员
}
在 C++ 中,每一个对象都能通过 this 指针来访问自己的地址。this 指针是所有成员函数的隐含参数。因此,在成员函数内部,它可以用来指向调用对象。
参考
https://zhuanlan.zhihu.com/p/165992745
https://www.runoob.com/note/28432