Концепции C++: BitmaskType
Материал из cppreference.com
![]() |
Эта страница была переведена автоматически с английской версии вики используя Переводчик Google. Перевод может содержать ошибки и странные формулировки. Наведите курсор на текст, чтобы увидеть оригинал. Щёлкните здесь, чтобы увидеть английскую версию этой страницы. (Вы можете помочь в исправлении ошибок и улучшении перевода. Для инструкций перейдите по ссылке.) |
Определяет тип, который может быть использован для представляют собой набор постоянных значений или любое сочетание этих ценностей. Эта черта, как правило, реализуется целых типов, std::bitset, или перечисления (и незаданной областью) с дополнительной перегрузки оператор��.
Оригинал:
Defines a type that can be used to represent a set of constant values or any combination of those values. This trait is typically implemented by integer types, std::bitset, or enumerations (scoped and unscoped) with additional operator overloads.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
[править] Требования
Битовой маски тип поддержива��т конечное число элементов битовой маски, которые отличаются значения битовой маски, типа, такая, что для любой пары Ci и Cj, Ci & Ci != 0 и Ci & Cj == 0.
Оригинал:
The bitmask type supports a finite number of bitmask elements, which are distinct values of the bitmask type, such that, for any pair Ci and Cj, Ci & Ci != 0 and Ci & Cj == 0.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Битовые операторы operator&, operator|, operator^, operator~, operator&=, operator|=, и operator^= определены для значений битовой маски типа и имеют ту же семантику, что и соответствующие встроенные операторы на целые числа без знака бы, если бы битовой маски элементы были различны целое Полномочия два.
Оригинал:
The bitwise operators operator&, operator|, operator^, operator~, operator&=, operator|=, and operator^= are defined for values of the bitmask type and have the same semantics as the corresponding built-in operators on unsigned integers would have if the bitmask elements were the distinct integer powers of two.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Следующие выражения хорошо сформированы и имеют следующее значение для любого BitsetType X
Оригинал:
The following expressions are well-formed and have the following meaning for any BitsetType X
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
X |= Y | устанавливает значение Y в объект X
Оригинал: sets the value Y in the object X Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. |
X &= ~Y | очищает значение Y в объект X
Оригинал: clears the value Y in the object X Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. |
X&Y != 0 | указывает, что значение Y установлена в объект X
Оригинал: indicates that the value Y is set in the object X Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. |
Каждый элемент representible битовой маски определяется как constexpr значение битовой маски, типа.
Оригинал:
Each representible bitmask element is defined as a constexpr value of the bitmask type.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
[править] Статистика
Следующие стандартные типы библиотек удовлетворяют
BitmaskType
Оригинал:
The following standard library types satisfy
BitmaskType
:Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
- std::ctype_base::mask
- std::ios_base::fmtflags
- std::ios_base::iostate
- std::ios_base::openmode
- std::regex_traits::char_class_type
- std::regex_constants::syntax_option_type
- std::regex_constants::match_flag_type
- std::launch,
Код, который опирается на некоторый конкретный вариант реализации (например, int n = std::ios_base::hex), является непереносимой, потому что std::ios_base::fmtflags не обязательно неявно преобразуются в int.
Оригинал:
Code that relies on some particular implementation option (e.g. int n = std::ios_base::hex), is nonportable because std::ios_base::fmtflags is not necessarily implicitly convertible to int.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.