1. 체인
C++의 대입 연산은 여러 개가 사슬처럼 엮일 수있는 성질을 가진다.
int x,y,z;
x=y=z=15;
일종의 관례로 대입 연산자를 구현하는 경우 참조자를 반환하여 체인을 사용할 수 있도록 한다.
class Widget{
public :
Widget& operator = (const Widget& rhs){
...
return *this;
}
};
대입 연산자 뿐만아니라, +=,-=,*= 등에도 동일한 규약이 적용된다.
이것만은 잊지 말자!
- 대입 연산자는 *this의 참조자를 반환하도록 만드세요.
'C++ > Effective C++' 카테고리의 다른 글
[Effective C++] 12. 객체의 모든 부분을 빠짐없이 복사하자 (0) | 2020.07.28 |
---|---|
[Effective C++] 11. operator =에서는 자기대입에 대한 처리가 빠지지 않도록 하자 (0) | 2020.07.28 |
[Effective C++] 9. 객체 생성 및 소멸 과정 중에는 절대로 가상 함수를 호출하지 말자 (0) | 2020.07.28 |
[Effective C++] 8. 예외가 소멸자를 떠나지 못하도록 붙들어 놓자 (0) | 2020.07.27 |
[Effective C++] 7. 다형성을 가진 기본 클래스에서는 소멸자를 반드시 가상 소멸자로 선언하자 (0) | 2020.07.27 |