[Kotlin] 연산자 오버로딩

[원본 링크]

자바의 지저분한 가독성과 직관성을 탈피하기 위해 코틀린에서는 연산자 오버로딩을 지원한다.

참으로 현명하고 아름다운 결정이 아닐 수 없다.

코틀린에서 연산자 함수는 operator fun으로 선언되고, 연산자마다 고유한 이름이 존재한다.
가령 +는 plus고 -는 minus다.
아래는 그 사용례다. image

image

그리고 특히 비교연산자의 구현이 아름답다.
<, >, <=..등을 따로 구현하지 않고, 뭉쳐서 만들어버린다!
구현 내용 자체는 c의 strcmp 등과 유사하다. 같으면 0, 왼쪽이 작으면 음수, 왼쪽이 크면 양수를 반환하도록 하면 된다. image

image


전역함수로는 선언이 안되는것같다.