std::locale::combine (3) - Linux Manuals

std::locale::combine: std::locale::combine

NAME

std::locale::combine - std::locale::combine

Synopsis


Defined in header <locale>
template< class Facet >
locale combine( const locale& other ) const;


Constructs a locale object which is a copy of *this except for the facet of type Facet, which is copied from other.

Return value


The new, nameless, locale.

Exceptions


std::runtime_error if other does not implement Facet

Example


// Run this code


  #include <iostream>
  #include <locale>


  int main()
  {
      const double number = 1000.25;
      std::cout << "\"C\" locale: " << number << '\n';
      std::locale loc = std::locale().combine<std::numpunct<char>>(std::locale("en_US.UTF8"));
      std::cout.imbue(loc);
      std::cout << "\"C\" locale with en_US numpunct: " << number << '\n';
  }

Output:


  "C" locale: 1000.25
  "C" locale with en_US numpunct: 1,000.25

See also


              constructs a new locale
constructor (public member function)