2009.07.23 19:32 책 정리/Modern C++ Design

제네릭한 스타일 코드에선 Boolean 값의 상수에 따라 두 자료형 중 하나를 선택해야 할 필요가 있다책에 적혀 있다. .. 사실 이런 경우를 겪어 볼 만큼 실력이 있지 않아 이런 경우가 있을까? 란 의구심마저 들지만, 어떤 원리가 있는지만 알아 두자.

Boolean 값으로 두 자료형 중 한 자료형을 선택하기


직감적으로 어떤 원리인지 알 수 있을 것이다.

.. 그래도 말로 정리하자면,

  1. 템플릿을 이용하여 boolean의 어떤 타입이 오건 T를 선택하게 한다.
  2. 예외적으로 boolean이 false일 때, U를 선택하게 한다.


다시 글의 처음으로 되돌아 가서, 두 자료형 중 하나를 선택해야 할 때가 언제 일까?
다형성을 이용할 때라든지, 큰 용량의 객체를 복사 하려 할 때, 포인터를 사용하면 조금 더 최적화가 가능해 지며, 관리가 약간(많이는 아니더라...) 더 좋아진다. 이때, 이 테크닉을 활용하면 좋을 듯 싶다. 예를 들어, 다형성을 가지고 있다면 포인터로 저장, 다형성이 없다면 볼래 타입으로 저장.. 뭐 이런식...

다음 테크닉에선 "타입이 다형성을 가지고 있는지 체크하는 테크닉"을 알아보겠다.

이번 장은, 경험해 보지 못해서 마음으로 이해하지 못했던 장이였다.

posted by 농사를 짓는 게임 프로그래머 최익필

댓글을 달아 주세요