C++/Study

[C++] 후위형 증감연산자 오버로딩 시 주의사항

MoongStory 2024. 12. 13. 21:48
반응형
 
const Point operator++ (int)
{
	// ...
}

 

1. 매개변수 위치에 int를 넣어준다. 이는 후위형 증감연산자 오버로딩이라는 약속이며 int라고 해서 특별히 정수형과 관련 있는것은 아니다.

int가 없으면 전위형 증감연산자 오버로딩이 된다.

2. 반환형을 const 객체로 한다.

이는 Point pos; 라고 객체를 생성했을 때 (pos++)++; 와 같은 연산을 막기 위해서이다.

++(++pos);는 허용이 되지만 (pos++)++; 는 허용되지 않는 문법이다.

반응형