2015년 10월 15일 목요일

[C#강좌,연산자오버로딩,Overloading]

[C#강좌,연산자오버로딩,Overloading]

아래와 같은 Emp 클래스가 있다. 


class Emp { 
  public int sal; 

>=, <= 연산자를 연산자 오버로딩하여
Emp sal 값이 클경우로 비교하여 정의하시오.

1. Emp Class를 정의하세요
2. Emp 클래스안에 >=, <= 연산자를 오버로딩 하시오.
3. Test 클래스 만들어 Emp객체에 대해 오버로딩한 연산자를 테스트 하시오.

Emp e1 = new Emp(); e1.sal = 1000;
Emp e2 = new Emp(); e2.sal = 2000;

if (e1 >= e2) {
Console.WriteLine("e1이 크다 {0} >= {1}", e1.sal, e2.sal);
}
else {
Console.WriteLine("e2가 크다 {0} < {1}", e1.sal, e2.sal);
}



using System;
namespace ConsoleApplication6
{
    public class Emp
    {
        public int sal;
        public static bool operator >= (Emp e1, Emp e2)
        {
            return (e1.sal >= e2.sal);
        }

        public static bool operator <= (Emp e1, Emp e2)
        {
            return !(e1 >= e2);
        }
    }
    class Test
    {
        static void Main()
        {
            Emp e1 = new Emp(); e1.sal = 1000;
            Emp e2 = new Emp(); e2.sal = 2000;

            if (e1 >= e2)
            {
                Console.WriteLine("e1의 급여가 많다.");
            }
            else
            {
                Console.WriteLine("e2의 급여가 많다.");
            } 
        }
    }
}

댓글 없음:

댓글 쓰기