Espacios de nombres
Variantes

std::locale::id

De cppreference.com
 
 
 
 
Definido en el archivo de encabezado <locale>
class locale::id;

La clase std::locale::id proporciona una identificación específica de la implementación de una faceta de configuración regional. Cada facet tiene un miembro estático público llamado id de tipo std::locale::id y cada objeto std::locale mantiene una lista de facetas que implementa, indexadas por sus id.

Las facetas con el mismo id pertenecen a la misma categoría de faceta y se reemplazan entre sí cuando se agregan a un objeto de configuración regional.

Funciones miembro

Construye un nuevo identificador.
(función miembro pública)
operator=
Se elimina el operador de asignación de copia.
(función miembro pública)

Ejemplo

El siguiente ejemplo muestra cómo construir una faceta personalizada mínima.

#include <iostream>
#include <locale>

struct mi_faceta : std::locale::facet
{
    mi_faceta(std::size_t refs = 0) : facet(refs) {}
    static ::std::locale::id id;
};

std::locale::id mi_faceta::id;

int main()
{
    std::locale mi_conf_regional(std::locale(), new mi_faceta);
    std::cout << "has_facet<mi_faceta>(mi_conf_regional) devuelve " << std::boolalpha
              << std::has_facet<mi_faceta>(mi_conf_regional) << '\n';
}

Salida:

has_facet<mi_faceta>(mi_conf_regional) devuelve true

Véase también

La clase base para todas las categorías de facetas: cada faceta de cualquier categoría se deriva de este tipo.
(clase) [editar]