[C++] 点操作符(.)和箭头操作符(->)

主要注意它们的优先级都很高,且都是左结合的,不同在于点操作符操作的是对象,箭头操作符操作的是指针,且都能被其对应的类型的数值右值赋值。
以下是例子:

#include<iostream>
using namespace std;

struct Point{
	double x,y;
};

int main(){
	Point p[5];
	for (int i = 0; i < 5; ++i)
	{
		(*(p+i)).x = i;
		//*(p+i).x = i;//error 因为.的优先级更高,且.不能操作一个指针。
		(p+i)->y= i+1;
		cout<<p[i].x<<" "<<p[i].y<<endl;
	}
	return 0;
}
posted @ 2018-08-29 14:42  zengzhaocheng  阅读(1198)  评论(0)    收藏  举报