[Effective C++] 10. 대입 연산자는 *this의 참조자를 반환하게 하자

C++/Effective C++

2020. 7. 28. 21:14

1. 체인

C++의 대입 연산은 여러 개가 사슬처럼 엮일 수있는 성질을 가진다.

int x,y,z;
x=y=z=15;

 

일종의 관례로 대입 연산자를 구현하는 경우 참조자를 반환하여 체인을 사용할 수 있도록 한다.

class Widget{
public :

	Widget& operator = (const Widget& rhs){
    	...
    	return *this;
    }
};

대입 연산자 뿐만아니라, +=,-=,*= 등에도 동일한 규약이 적용된다.

 

이것만은 잊지 말자!

  • 대입 연산자는 *this의 참조자를 반환하도록 만드세요.