For some standard facets a standard “
…_byname” class,
derived from it, implements the virtual function semantics
equivalent to that facet of the locale
constructed by 
locale(const char*) with the same name
.Each such facet provides a constructor that takes
a 
const char* argument, which names the locale, and
a 
refs argument, which is passed to the base class constructor
.Each such facet also provides a constructor that takes
a 
string argument 
str and
a 
refs argument,
which has the same effect as calling the first constructor
with the two arguments 
str.c_str() and 
refs.If there is no “
…_byname” version of a facet,
the base class implements named locale semantics itself
by reference to other facets
.