NullType
 .. 아니 이게 모지? 라고 생각을 했었다. 10개월 전 쯤에.. 처음 이것의 가치를 본 것은 boost::tuple이였다. 템플릿이 코드를 생성한다고 하나, 템플릿 파라미터를 가변으로 만들어주지는 못하고 있다.(나중에 한다는 말을 들은 것 같은데?)

tuple 을 보면 총 10개까지(까지가 중요한거다 까지!) 타입을 받아 하나의 자료형으로 묶을 수가 있다. 만약 10개가 안되는 타입, 예를 들어 2개의 타입만을 묶을 때는 나머지 8개의 타입을 NullType으로 묶는다.

음.. 실제로 boost::tuple의 생성자 쪽을 보면, 헉! 이건 뭐지? 라고 할텐데. 보면 자연스럽게 직감할 수 있을 것이라고 생각한다.

크... 다시 정리 하지만 NullType은 "난 타입이 아니야. 임마!" 라는 타입이다. 만들 때는 다음과 같이 만든다.


EmptyType
이 타입이 어떻게 쓰이는지 본적이 없어서 잘 모르겠다. 책에선 다음과 같이 정리 했는데,

  1. EmptyType은 상속이나 함수의 파라미터로 건네질 수 있다.
  2. 난 텅텅 비어 있는 타입이다.
  3. 타입을 사용해야 하긴 하나, 사용할게 없을 때 쓸 수 있는 타입(Don't care)

음 실제 어떻게 코드를 짜는지 보면 알 수 있을 듯 싶다. 일단 EmptyType 은 밑의 코드 처럼 만든다.

  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 라이프코리아트위터 공유하기
  • shared
  • 카카오스토리 공유하기