|
연산자 겹지정의 가장 큰 목적은 리스팅의 직관성입니다.
다시 말해서 클래스 사용자의 노력을 클래스 작성자에게 조금 떠넘긴다고도 할수
있겠지요.
특히 AnisString의 경우 볼 수 있는 + 연산자는 두 스트링의 연결을 의미하는데
훨씬 눈으로 이해하기 쉽습니다.
물론 함수로 모두 구현가능한것입니다. 하지만 이런 직관성이 연산자 오버로딩의
매력이겠지요.
또한 모든 연산자를 겹지정 할 수 있는것은 아닙니다.
아직 존재하지 않는 연산자들을 겹지정할 수는 없겠지요? 또한 내장 연산자들중에
아직 . :: ?: 등등은 겹지정할 수 없습니다.
[참고]
Object Oriented Programming in C++ (4th)
(Robert Lafore)
-> Operator Overload장을 살펴보세요.
그외 C++서적의 연산자 오버로딩을 보시면 자세히 있습니다.
C++초짜 님이 쓰신 글 :
: operator+
: operator+=
: operator=
: operator++
:
: 이렇게 있는 것으로 알고 있는데
:
: 이것들의 용도를 알고 싶습니다.
:
: 부탁드려용~
|