Kwadrat
的类。该类有三个 int
类型的字段。我的开发环境建议我通过使用 ::
和 ->
运算符从创建的 Kwadrat
对象中访问这些字段。我尝试了这两种运算符,并发现 ->
运算符能够成功访问对象字段中的数据,但是对于 .
运算符就不行了。我还发现,
.
运算符也可以访问类成员。我很困惑,不明白为什么有三个运算符来访问对象成员和/或方法。请问有谁能解释一下这三个运算符之间的区别吗?
1. ->
2. ::
3. .
#include <iostream>
using namespace std;
class Kwadrat{
public:
int val1,
val2,
val3;
Kwadrat(int val1, int val2, int val3)
{
this->val1 = val1; // Working
this.val2 = val2; // Doesn't Work!
this::val3 = val3; // Doesn't Work!
}
};
int main()
{
Kwadrat* kwadrat = new Kwadrat(1,2,3);
cout<<kwadrat->val1<<endl;
cout<<kwadrat->val2<<endl;
cout<<kwadrat->val3<<endl;
return 0;
}