It constructs copy of locale modifying one facet and returns a locale object constructed from a copy of *this, except for the facet specified by template parameter Facet, which is taken from x.
DeclarationFollowing is the declaration for std::locale::combine.
C++98template <class Facet> locale combine (const locale& x) const;C++11
template <class Facet> locale combine (const locale& x) const;Parameters
x − It is a locale objects whose facet Facet is used by the new locale.
Return ValueIt returns the resulting locale object, which has no name.
ExceptionsBasic guarantee − if an exception is thrown, the object is in a valid state.
Data racesThe locale object is modified.
ExampleIn below example explains about std::locale::combine.
#include <iostream> #include <locale> int main () { std::locale loc(""); loc = loc.combine< std::num_put<char> > (std::locale::classic()); std::cout.imbue(loc); std::cout << 3.1 << '\n'; return 0; }
Let us compile and run the above program, this will produce the following result −
3.1
locale.htm
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4