Apache C++ Standard Library User's Guide
Chapter 41: Defining Your Own Character Types
41.1 User-Defined Character Types
41.1.1 Requirements for User-Defined Character Types
41.2 Defining Traits and Facets for User-Defined Types
41.3 Creating and Using Streams Instantiated on User-Defined Types