Пространства имён
Варианты
Действия

std::has_facet

Материал из cppreference.com
< cpp‎ | locale

Определено в заголовочном файле <locale>
template< class Facet >
bool has_facet( const locale& loc );
Проверяет, является ли язык loc реализует грань Facet.
Оригинал:
Checks if the locale loc implements the facet Facet.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

Содержание

[править] Параметры

loc -
локализации объекта для запроса
Оригинал:
the locale object to query
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

[править] Возвращаемое значение

Возврат true если грань Facet был установлен в локали loc, false иначе.
Оригинал:
Returns true if the facet Facet was installed in the locale loc, false otherwise.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

[править] Исключение спецификации

noexcept-спецификация:  
noexcept
  (начиная с C++11)

[править] Пример

#include <iostream>
#include <locale>
// minimal custom facet
struct myfacet : public std::locale::facet {
    static std::locale::id id;
};
std::locale::id myfacet::id;
int main()
{
    // loc is a "C" locale with myfacet added
    std::locale loc(std::locale::classic(), new myfacet);
    std::cout << std::boolalpha
              << "Can loc classify chars? "
              << std::has_facet<std::ctype<char>>(loc) << '\n'
              << "Can loc classify char32_t? "
              << std::has_facet<std::ctype<char32_t>>(loc) << '\n'
              << "Does loc implement myfacet? "
              << std::has_facet<myfacet>(loc) << '\n';
}

Вывод:

Can loc classify chars? true
Can loc classify char32_t? false
Does loc implement myfacet? true

[править] См. также

набор полиморфных фасетов, инкапсулирующих культурные различия
(класс) [edit]
получает фасет по локали
(шаблон функции) [edit]