제목 : 예제. 연산자의 오버로드를 확인하는 프로그램
    
    
 
    
	
        
        
		
		
	
	
    
	//연산자의 오버로드를 확인하는 프로그램
using System;
public class 정수
{
    //필드 선언
    public static readonly int 최소값 = -2147483648;
    public static readonly int 최대값 = 2147283647;
    public int 값;
    //생성자
    public 정수(int 값)
    {
        this.값 = 값;    
    }
    //int 형에서 정수 형으로 묵시적 형 변환
    public static implicit operator 정수(int 값)
    {
        return new 정수(값);
    }
    //++ 연산자의 오버로드
    public static 정수 operator ++(정수 값)
    {
        return ++값.값;
    }
    //+ 연산자의 오버로드
    public static 정수 operator +(정수 값1, 정수 값2)
    {
        return 값1.값 + 값2.값;
    }
}
public class 정수확인클래스
{
    public static void Main()
    {
        정수 정수변수1 = 10;
        정수 정수변수2 = 20;
        정수변수1++;
        정수 정수변수3 = 정수변수1 + 정수변수2;
        Console.WriteLine("정수 최소값 : {0} ~ 최대값 : {1}", 정수.최소값, 정수.최대값);
        Console.WriteLine("정수변수1 = {0}", 정수변수1.값);
        Console.WriteLine("정수변수2 = {0}", 정수변수2.값);
        Console.WriteLine("정수변수3 = {0}", 정수변수3.값);
    }
}