SFINAE 기법을 사용하면, 새로운 분기가 추가되면 기존 함수들의 템플릿 명세를 수정해야 합니다. 꼬리표 분배 방법은 템플릿 명세로 구분하는 것을, 함수의 인자로 구분하여 사용하는 방법입니다. 기존 함수들의 수정이 필요 없고, 깔끔해 지는 대신 표면에 드러난 함수와 처리하는 함수가 나눠지게 됩니다. 드러난 함수는 타입에 따라 알맞은 꼬리표를 실제 처리하는 함수에 전달해 주고, 처리하는 함수는 꼬리표에 따라 오버로딩해서 사용하는 방법입니다. 전달하는 방식은 템플릿 특수화(template specialization) 혹은 객체 넘겨 주기가 있습니다. 다만 특수화 해야 할 타입이 많고, 기능이 겹친다면 객체에 의한 꼬리표 분배 방식이 더 선호됩니다. 전자를 tag dispatching by type, 후자를..