Search code examples
c++locale

How to get a facet from a std::locale object?


I want to get the numpunct<char> facet for the native locale. I can generate a native locale object by constructing an object with an empty string std::locale native_loc(""), but once I have it how do I get a numpunct from it? The documentation I've found doesn't really show the connection between the two.


Solution

  • Use use_facet<facet_type>(locale):

    std::numpunct<char> const&n = std::use_facet< std::numpunct<char> >(std::locale(""));