연산자 오버로딩 조건
1. Public + Static 이어야 합니다.
2. 모든 리턴 타입이 가능하나, void 타입은 불가능 합니다.
public class Num
{
private int m_num;
public Num(int num = 0) { this.m_num = nums; }
public static int operator +(Num n1, Num n2)
{
return n1.m_num + n2.m_num;
}
}
class Sum
{
static void Main()
{
Num num1 = new Num(1);
Num num2 = new Num(2);
int result = num1 + num2; // + 연산자 오버로딩
}
}
* C#은 명시적(explicit), 암시적(implicit)도 오버로딩이 가능합니다.