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
.