연산자 오버로딩 3

#059_닷넷(.NET)_.Net Framework 기본 - 연산자 오버로딩`

안녕하세요 삽잡이입니다. 이번 시간은 연산자 오버로딩에 대해서 알아보려고합니다.C++을 배우셨던 분들이라면 분명 익숙하게 들릴 만한 주제라고 생각합니다. 연산자 오버로딩을 하는 이유는연산자가 정의되어있지 않은 형식 즉, 사용자 형식(클래스형식)에 대해서내장 되어있는 연산자가 동작하도록 하기 위해서 입니다.그 결과로 더 쉽게 사용할 수 있고, 명확한 코드를 만들 수 있게 되지요. C++과 다르게 C#에서 연산자 중복을 할 때에는 멤버 함수,전역 함수로 오버로딩을 하지 못합니다.왜냐하면 전역함수가 C#에서는 없기 때문입니다. 따라서 static 메서드를 사용하게 됩니다.그래서 이항 연산자 오버로딩을 할 때에는 인자를 기본적으로 두개를 받게됩니다. C#에서는 전역 함수 연산자 중복만을 제공해줍니다.즉, 전역 ..

#014_시(c)시(c)해서 C++?!_cout과 endl 흉내내기

안녕하세요 삽잡이입니다... 이번시간에는 우리가 자주 사용하던 cout 기능의 메서드와 endl 을 알아보고자합니다. cout은 iostream에 속해있는 메서드입니다. 그 중에서 ostream 이라는 클래스에 포함되어있죠... 우리는 이 ostream 클래스 안에 있는 cout이라는 친구를 사용하여 출력을 하고 있었습니다... 이전 시간까지 배워온 연산자 중복정의를 응용하여서cout의 기능을 흉내내보려고 합니다... 비록 완벽하진 않지만아.. cout은 이런식으로 구현되있구나라는 것을 맛만 봐보도록 하겠습니다...대충 감이 오실걸요~? 확인해보도록 하죠... 123456789101112131415161718192021222324252627282930313233343536373839404142434445..

#011_시(c)시(c)해서 C++?!_ 이항 연산자 중복정의

안녕하세요 삽잡이 입니다~ 이번 시간에는 연산자 중복 정의에 대해서 알아보려고 합니다...시작하죠 푸하하... 1+1 가 뭔가요? 귀요미 아니죠... 2입니다... 껄껄껄 우리는 당연하게 1+1은 2라고 합니다.. 그런데 말입니다...이 '+' 라는 기능을 C++에서는 개발자 마음대로 중복 정의를 할 수 있게 됩니다...이름하여 연산자 중복정의 (연산자 오버로딩) 라고 합니다... 이 연산자 중복정의는,제공하는 개발자가 사용하는 개발자에게 편의를 주기 위해서 제공하는 기능입니다.왜냐, 어차피 이런 연산자 중복정의해봤자 일반 사람이 쓰겠습니까? ㅎㅎ결국은 개발자가 사용할 것이니,제공하는 개발자가 사용하는 개발자에게.... 라는 말로 설명을 드렸습니다. 1+1, 4-2, 9*3 등등... 피 연산자들이 기존..