이들 함수는 주어진 크기의 부호 없는 정수만 뒤집을 수 있으며 이외에 float, double, 부호 있는 정수, 열거자 등은 취급하지 않는다. 이런 자료형도 처리하려면 다음과 같이 다소 위험하지만 자료형 별칭(type aliaser) 클래스를 만들어 쓴다.
template <typename tFrom, typename tTo> class TypeAliaser { public: TypeAliaser(tFrom inFromValue) : mAsFromType(inFromValue) { } tTo& Get() { return mAsToType; } union { tFrom mAsFromType; tTo mAsToType; } };
이 클래스는 데이터를 특정 형, 이를테면 float로 받은 다음 이 데이터를 바이트 스와핑 함수에서 지원하는 형으로 바꿔 준다. 보조 함수 몇 가지를 템플릿으로 코드 4-4처럼 추가하면 모든 원시 자료형을 스와핑할 수 있다.