c++中的 . 与 ->
我们知道 . 与 -> 都是用来访问类中的成员的。
但是我们知道他们的共同点,不同点也是我们想要问的,以下就是他们的不同点。
b.a 可以读做“b的a”。用于当 b 是对象 a 的成员,需要访问这个成员 b 的时候会使用a.b这样的方式。
p->a 读作“指向A类的b”其实是 (*p).a 这种访问方式的简写,即当 p 是指向对象的指针时就需要这种方式来访问这个 a ;
#include<iostream>
class A
{
public:
int a = 0;
};
int main()
{
A b;
A *p = &b;
std::cout << "b.a = " << b.a << "\n";//类类型的对象访问类的成员
std::cout << "p->a = " << p->a << "\n";//类类型的指针访问类的成员
system("pause");
return 0;
}