[C#] 연산자 오버로딩 - operator 키워드
2023. 7. 22. 23:32ㆍC#
연산자 오버로딩은 클래스나 구조체가 연산자를 통해 사용될 수 있게 오버로딩하는 방법이다.
operator 키워드 사용법
operator 키워드는 무조건 public static 을 통해 선언하며, 오버로드할 연산자와 형태에 따른 로직을 구현하면
연산자를 호출했을때 자신이 원하는 값을 반환할수있다.
아래는 유니티의 Vector3 구조체에 구현된 연산자 오버로드 예시이다.


이외에도 유니티의 Fake Null을 구현하는데 사용되는등 아주 유용한 키워드이다.
사용예시
유니티에서 MyData라는 데이터 저장용 클래스를 만들었다고 생각해 보자.
1이라는 정보를 저장하고 있는 두 개의 클래스를 만들고 서로 비교해 보았을 때,

내가 원한 결과는 True지만, 서로 다른 객체기 때문에 결과가 False인 것을 알 수 있다.
이럴때 == 연산자를 오버로드하여 내가 원하는 정보를 반환할수있다.

오버로딩 가능한 연산자들
C#의 연산자 오버로딩은 비교, 산술, 논리 연산자등을 오버로딩 할 수 있다.

마이크로소프트 공식 문서를 참조하여 조사했다.
'C#' 카테고리의 다른 글
| [C#] 생성자에서 다른 생성자 호출하기 (0) | 2023.08.10 |
|---|---|
| [C#] params 키워드 (0) | 2023.08.01 |
| [C#] 인덱서의 사용법 (0) | 2023.07.26 |
| [C#] const 키워드와 readonly 키워드 (0) | 2023.07.24 |
| [C#] Obsolete 어트리뷰트의 사용법 (0) | 2023.07.17 |