std::locale::id Class Reference
Locales

## Public Member Functions

| id ()
size_t | _M_id () const throw ()

## Friends

template<typename _Facet >
bool | has_facet (const locale &) throw ()
class | locale
class | locale::_Impl
template<typename _Facet >
const _Facet & | use_facet (const locale &)

## Detailed Description

Facet ID class.

The ID class provides facets with an index used to identify them. Every facet class must define a public static member locale::id, or be derived from a facet that provides this member, otherwise the facet cannot be used in a locale. The locale::id ensures that each class type gets a unique identifier.

Definition at line 483 of file locale_classes.h.

## Constructor & Destructor Documentation

## id()

std::locale::id::id | ( |  | ) |

inline

Constructor.

Definition at line 514 of file locale_classes.h.

References std::locale::has_facet, and std::locale::use_facet.

## Friends And Related Function Documentation

## has_facet

template<typename _Facet >

bool has_facet | ( | const locale & |  | ) |
throw | ( |
| ) |  |

friend

Test for the presence of a facet.has_facet tests the locale argument for the presence of the facet type provided as the template parameter. Facets derived from the facet parameter will also return true.

Template Parameters

  _Facet | The facet type to test the presence of.

Parameters

  __loc | The locale to test.

Returns
  true if `__loc` contains a facet of type _Facet, else false.

Definition at line 104 of file locale_classes.tcc.

## use_facet

template<typename _Facet >

const _Facet& use_facet | ( | const locale & |  | ) |

friend

Return a facet.use_facet looks for and returns a reference to a facet of type Facet where Facet is the template parameter. If has_facet(locale) is true, there is a suitable facet to return. It throws std::bad_cast if the locale doesn't contain a facet of type Facet.

Template Parameters

  _Facet | The facet type to access.

Parameters

  __loc | The locale to use.

Returns
  Reference to facet of type Facet.

Exceptions

  std::bad_cast | if `__loc` doesn't contain a facet of type _Facet.

Definition at line 132 of file locale_classes.tcc.

The documentation for this class was generated from the following file:

- locale_classes.h