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

Comparison operators

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

 
 
Язык С++
Общие темы
Управление программой
Операторы условного выполнения
Операторы повторения
Операторы перехода
Функции
объявление функции
объявление лямбда-функции
шаблон функции
спецификатор inline
спецификаторы исключений (устарело)
спецификатор noexcept (C++11)
Исключения
Пространства имён
объявление пространства имён
псевдонимы пространства имён
Типы
спецификатор decltype (C++11)
Спецификаторы
cv-спецификаторы
спецификаторы продолжительности хранения
спецификатор constexpr (C++11)
спецификатор auto (C++11)
спецификатор alignas (C++11)
Инициализация
Литералы
Выражения
Утилиты
Типы
typedef-объявление
объявление псевдонима типа (C++11)
атрибуты (C++11)
Приведения типов
неявные преобразования
const_cast-преобразование
static_cast-преобразование
dynamic_cast-преобразование
reinterpret_cast-преобразование
C-подобное и функциональное приведение типов
Выделение памяти
Классы
Особые свойства классовых функций
Специальные функции-члены
Шаблоны
шаблон класса
шаблон функции
специализация шаблона
упакованные параметры (C++11)
Разное
Ассемблерные вставки
 
Сравнивает аргументы.
Оригинал:
Compares the arguments.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
Operator name Syntax Over​load​able Prototype examples (for class T)
Inside class definition Outside class definition
equal to a == b Да bool T::operator ==(const T2 &b) const; bool operator ==(const T &a, const T2 &b);
not equal to a != b Да bool T::operator !=(const T2 &b) const; bool operator !=(const T &a, const T2 &b);
less than a < b Да bool T::operator <(const T2 &b) const; bool operator <(const T &a, const T2 &b);
greater than a > b Да bool T::operator >(const T2 &b) const; bool operator >(const T &a, const T2 &b);
less than or equal to a <= b Да bool T::operator <=(const T2 &b) const; bool operator <=(const T &a, const T2 &b);
greater than or equal to a >= b Да bool T::operator >=(const T2 &b) const; bool operator >=(const T &a, const T2 &b);
'Примечание'
Оригинал:
Notes
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
  • Все встроенные операторы возвращения bool, и большинство пользовательских перегрузки также вернуть bool, так что пользователю определенные операторы могут быть использованы таким же образом, как и встроенные модули. Однако, в определенный пользователем оператор перегрузки, любого типа могут быть использованы в качестве возвращаемого типа (в том числе void).
    Оригинал:
    All built-in operators return bool, and most user-defined overloads also return bool so that the user-defined operators can be used in the same manner as the built-ins. However, in a user-defined operator overload, any type can be used as return type (including void).
    Текст был переведён автоматически через Google Translate.
    Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
  • T2 может быть любого типа, включая T
    Оригинал:
    T2 can be any type including T
    Текст был переведён автоматически через Google Translate.
    Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

Содержание

[править] Объяснение

Возвращает логический результат сравнения значений аргументов, которые не изменяются.
Оригинал:
Returns the boolean result of comparison of the values of the arguments, which are not modified.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

[править] Арифметические операторы сравнения

Для каждой пары способствовали арифметических типов L и R, в том числе перечисления типов, следующие функции подписи участие в разрешении перегрузки
Оригинал:
For every pair of promoted arithmetic types L and R, including enumeration types, the following function signatures participate in overload resolution:
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
bool operator<(L, R);
bool operator>(L, R);
bool operator<=(L, R);
bool operator>=(L, R);
bool operator==(L, R);
bool operator!=(L, R);
Если операнды имеет арифметический или тип перечисления (или незаданной областью), обычные арифметические преобразования осуществляется в соответствии с правилами для арифметических операторов. Значения сравниваются после преобразования
Оригинал:
If the operands has arithmetic or enumeration type (scoped or unscoped), usual arithmetic conversions are performed following the rules for арифметических операторов. The values are compared after conversions:
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

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

#include <iostream>
int main()
{
    std::cout << std::boolalpha;
    int n = -1;
 
    int n2 = 1;
    std::cout << " -1 == 1? " << (n == n2) << '\n'
              << "Comparing two signed values:\n"
              << " -1  < 1? " << (n < n2) << '\n'
              << " -1  > 1? " << (n > n2) << '\n';
 
    unsigned int u = 1;
    std::cout << "Comparing signed and unsigned:\n"
              << " -1  < 1? " << (n < u) << '\n'
              << " -1  > 1? " << (n > u) << '\n';
 
    unsigned char uc = 1;
    std::cout << "Comparing signed and smaller unsigned:\n"
              << " -1  < 1? " << (n < uc) << '\n'
              << " -1  > 1? " << (n > uc) << '\n';
}

Вывод:

-1 == 1? false
Comparing two signed values:
 -1  < 1? true
 -1  > 1? false
Comparing signed and unsigned:
 -1  < 1? false
 -1  > 1? true
Comparing signed and smaller unsigned:
 -1  < 1? true
 -1  > 1? false

[править] Указатель операторов сравнения

Для каждого типа P которых либо указатель на объект или указатель на функцию или std::nullptr_t, и для каждого типа MP, что это указатель на объект члена или указатель на функцию-член, следующие функции подписи участие в разрешении перегрузки
Оригинал:
For every type P which is either pointer to object or pointer to function or std::nullptr_t, and for every type MP that is a pointer to member object or pointer to member function, the following function signatures participate in overload resolution:
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
bool operator<(P, P);
bool operator>(P, P);
bool operator<=(P, P);
bool operator>=(P, P);
bool operator==(P, P);
bool operator!=(P, P);
bool operator==(MP, MP);
bool operator!=(MP, MP);
Операторы сравнения могут быть использованы для сравнения двух указателей (или указатели на элементы, для operator== и operator!= только), или указателя и нулевого указателя постоянной или двух нулевых указателей константы (но только до тех пор, пока хотя бы один из них является std::nullptr_t: сравнение NULL и NULL следующим правилам арифметического сравнения). Указатель преобразования (указатель на член преобразования, если аргументы являются указателями на членов) и квалификация преобразований применяются для обоих операндов для получения композитных' тип указателя, как следует
Оригинал:
Comparison operators can be used to compare two pointers (or pointers-to-members, for operator== and operator!= only), or a pointer and a null pointer constant, or two null pointer constants (but only as long as at least one of them is std::nullptr_t: comparison of NULL and NULL follows arithmetic comparison rules). Указатель преобразования (pointer to member conversions if the arguments are pointers to members) and квалификация преобразований are applied to both operands to obtain the composite pointer type, as follows
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
1)
Если оба операнда являются константами нулевым указателем, составной тип указателя std::nullptr_t
Оригинал:
If both operands are null pointer constants, the composite pointer type is std::nullptr_t
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
2)
Если один из операндов NULL постоянным указателем, а другой указатель, составного типа именно тип указателя
Оригинал:
If one operand a null pointer constant and the other is a pointer, the composite type is exactly the pointer type
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
3)
Если оба операнда являются указателями на того же типа, с различным CV-квалификация, композита указатель того же типа с CV-квалификация, которая является объединением CV-квалификации аргументы.
Оригинал:
If both operands are pointers to the same type, with different cv-qualification, the composite is pointer to the same type with cv-qualification that is a union of the cv-qualifications of the arguments.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
Обратите внимание, что это означает, что любой указатель можно сравнить с void*.
Оригинал:
Note that this implies that any pointer can be compared with void*.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
Результаты сравнения двух указателей (после преобразования) определяется следующим образом:
Оригинал:
Results of comparing two pointers (after conversions) are determined as follows:
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
1)
Если указатели p и q
Оригинал:
If the pointers p and q
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
a)
указывать на тот же объект или функцию
Оригинал:
point to the same object or function
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
b)
или указать один прошлый конце того же массива
Оригинал:
or point one past the end of the same array
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
c)
или оба нулевые указатели
Оригинал:
or are both null pointers
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
Затем указатели равными: p==q, p<=q, и p>=q возвращения true, а p!=q, p<q, и p>q возвращения false,
Оригинал:
then the pointers compare equal: p==q, p<=q, and p>=q return true, while p!=q, p<q, and p>q return false,
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
2)
Если один из операндов является нулевым указателем, а другой нет, они сравнивают неравными: p==q возвращается true, p!=q возвращается false, поведение других операторов не определен.
Оригинал:
If one of the operands is a null pointer and the other is not, they compare unequal: p==q returns true, p!=q returns false, the behavior of other operators is unspecified.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
3)
Если указатели p и q указывают на элементы одного и того же массива a[i] и a[j] или один после конца массива, они результаты сравнения указателей такой же, как результат сравнения индексов: если i<j==true то {{{1}}}.
Оригинал:
If the pointers p and q point to members of the same array a[i] and a[j] or one past the end of the array, they results of comparing the pointers is the same as the result of comparing the indexes: if i<j==true then {{{1}}}.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
4)
Если указатели p и q пункт не статические данные члены пределах того же класса или различных подобъектов базы в пределах одного производного класса, или для их членов или подобъектов, рекурсивно, и если, то к членам / подобъектов имеют одинаковые контроля доступа (например, как public:), и класс не является объединением, то указатель на позднее объявил подобъект / член сравнивает больше, чем указатель на ранее заявлял подобъект / члена. Иными словами, члены класса в каждой из трех режимов доступа расположены в памяти в порядке их объявления.
Оригинал:
If the pointers p and q point to non-static data members within the same class or different base subobjects within the same derived class, or to their members or subobjects, recursively, and if the pointed-to members/subobjects have the same access control (e.g. both public:), and the class is not a union, then the pointer to the later declared subobject/member compares greater than the pointer to the earlier declared subobject/member. In other words, class members in each of the three access modes are positioned in memory in order of declaration.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
6)
Если указатели p и q указывают на элементы одного и того же union, они считаются равными (как правило, явные преобразования в void* требуется для одного из операндов)
Оригинал:
If the pointers p and q point to members of the same union, they compare equal (typically an explicit conversion to void* is required for one of the operands)
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
7)
Если один из указателей является указателем на void и оба указателя указывают на тот же адрес или оба нулевые указатели, они считаются равными.
Оригинал:
If one of the pointers is a pointer to void and both pointers point to the same address or are both null pointers, they compare equal.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
8)
Если два нулевых указателей константы сравниваются, они считаются равными.
Оригинал:
If two null pointer constants are compared, they compare equal.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
9)
Если оба операнда являются указателями на члены (объект или функцию), то они считаются равными, если они оба указывают на тот же член из самых производного класса.
Оригинал:
If both operands are pointers to member (object or function), they compare equal if they both point to the same member of the most derived class.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
10)
В противном случае (если указатели указывают на объекты в разных массивах, или с различными функциями, или члены некоторых объектов с различными контроля доступа и т.д.), результаты p<q, p>q, p<=q, и p>=q являются неопределенными, и p!=q возвращается false.
Оригинал:
Otherwise (if the pointers point to objects in different arrays, or to different functions, or to members of some object with different access control, etc), the results of p<q, p>q, p<=q, and p>=q are unspecified, and p!=q returns false.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

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

#include <iostream>
struct Foo  { int n1; int n2; };
union Union { int n; double d; };
int main()
{
    std::cout << std::boolalpha;
 
    char a[4] = "abc";
 
    char* p1 = &a[1];
    char* p2 = &a[2];
    std::cout << "Pointers to array elements: p1 == p2 " << (p1 == p2)
              << ", p1 < p2 "  << (p1 < p2) << '\n';
 
    Foo f;
    int* p3 = &f.n1;
    int* p4 = &f.n2;
    std::cout << "Pointers to members of a class: p3 == p4 " << (p3 == p4)
              << ", p3 < p4 "  << (p3 < p4) << '\n';
 
    Union u;
    int* p5 = &u.n;
    double* p6 = &u.d;
    std::cout << "Pointers to members of a union: p5 == (void*)p6 " << (p5 == (void*)p6)
              << ", p5 < p6 "  << (p5 < (void*)p6) << '\n';
}

Вывод:

Pointers to array elements: p1 == p2 false, p1 < p2 true
Pointers to members of a class: p3 == p4 false, p3 < p4 true
Pointers to members of a union: p5 == (void*)p6 true, p5 < p6 false

[править] Заметки

Поскольку эти операторы группы слева-направо, выражение a<b<c разбирается (a<b)<c, а не a<(b<c) или (a<b)&&(b<c).
Оригинал:
Because these operators group left-to-right, the expression a<b<c is parsed (a<b)<c, and not a<(b<c) or (a<b)&&(b<c).
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
Общим требованием для определяемых пользователем operator< является строгой слабой упорядоченности. В частности, этого требует стандартных алгоритмов и контейнеров, которые работают с LessThanComparable типов: std::sort, std::max_element, std::map, и т.д.
Оригинал:
A common requirement for user-defined operator< is строгой слабой упорядоченности. In particular, this is required by the standard algorithms and containers that work with LessThanComparable types: std::sort, std::max_element, std::map, etc.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
Хотя результаты сравнения указателей случайного происхождения (например, не все указывает на членов одного и того же массива) не определен, многие реализации предоставляют строгой полный порядок указателей, например, если они реализованы в виде адресов в непрерывном виртуальном адресном пространстве. Те, реализация которых не (например, когда не все биты в указателе, являются частью адреса памяти и должны быть проигнорировано для сравнения, или дополнительные расчеты необходимых или иного указателя и целого не 1 к 1 отношениях), обеспечивают Специализация std::less для указателей, которая имеет, что гарантии. Это дает возможность использовать все указатели случайного происхождения в качестве ключей в стандартных ассоциативных контейнеров, таких как std::set или std::map.
Оригинал:
Although the results of comparing pointers of random origin (e.g. not all pointing to members of the same array) is unspecified, many implementations provide строгой полный порядок of pointers, e.g. if they are implemented as addresses within continuous virtual address space. Those implementations that do not (e.g. where not all bits of the pointer are part of a memory address and have to be ignored for comparison, or an additional calculation is required or otherwise pointer and integer is not a 1 to 1 relationship), provide a specialization of std::less for pointers that has that guarantee. This makes it possible to use all pointers of random origin as keys in standard associative containers such as std::set or std::map.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

[править] Стандартные библиотеки

Сравнение операторов перегружены для многих классов в стандартной библиотеке.
Оригинал:
Comparison operators are overloaded for many classes in the standard library.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
checks whether the objects refer to the same type
(public функция-член std::type_info) [edit]
сравнивает два error_codes
Оригинал:
compares two error_codes
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(функция)
сравнивает error_conditions и error_codes
Оригинал:
compares error_conditions and error_codes
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(функция)
лексикографически сравнивает значения в паре
Оригинал:
lexicographically compares the values in the pair
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции) [edit]
лексикографически сравнивает значения в кортеже
Оригинал:
lexicographically compares the values in the tuple
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции) [edit]
сравнивает содержимое
Оригинал:
compares the contents
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(public функция-член std::bitset) [edit]
Сравнивает два экземпляра распределителя
Оригинал:
compares two allocator instances
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(public функция-член std::allocator) [edit]
сравнивается с другим unique_ptr или с nullptr
Оригинал:
compares to another unique_ptr or with nullptr
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции) [edit]
сравнивается с другим shared_ptr или с nullptr
Оригинал:
compares with another shared_ptr or with nullptr
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции) [edit]
сравнивается с std::function std::nullptr
Оригинал:
compares an std::function with std::nullptr
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции)
сравнивает два длительности
Оригинал:
compares two durations
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции)
сравнение двух моментов времени
Оригинал:
compares two time points
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции)
Сравнивает два экземпляра scoped_allocator_adaptor
Оригинал:
compares two scoped_allocator_adaptor instances
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(public функция-член std::scoped_allocator_adaptor) [edit]
сравнивает базовые объекты std::type_info
Оригинал:
compares the underlying std::type_info objects
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(public функция-член std::type_index) [edit]
лексикографическое сравнение двух строк
(шаблон функции) [edit]
сравнения на равенство между локали объектов
Оригинал:
equality comparison between locale objects
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(public функция-член std::locale) [edit]
Лексикографически сравнивает значения в array
(шаблон функции) [edit]
Лексикографически сравнивает значения в deque
(шаблон функции) [edit]
Лексикографически сравнивает значения в forward_list
(шаблон функции) [edit]
Лексикографически сравнивает значения в list
(шаблон функции) [edit]
Лексикографически сравнивает значения в vector
(шаблон функции) [edit]
Лексикографически сравнивает значения в map
(шаблон функции) [edit]
Лексикографически сравнивает значения в multimap
(шаблон функции) [edit]
Лексикографически сравнивает значения в set
(шаблон функции) [edit]
Лексикографически сравнивает значения в multiset
(шаблон функции) [edit]
сравнивает значения в unordered_map
Оригинал:
compares the values in the unordered_map
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции) [edit]
сравнивает значения в unordered_multimap
Оригинал:
compares the values in the unordered_multimap
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции) [edit]
сравнивает значения в unordered_set
Оригинал:
compares the values in the unordered_set
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции) [edit]
сравнивает значения в unordered_multiset
Оригинал:
compares the values in the unordered_multiset
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции) [edit]
Лексикографически сравнивает значения в queue
(шаблон функции) [edit]
Лексикографически сравнивает значения в stack
(шаблон функции) [edit]
сравнивает два reverse_iterators за равноправие
Оригинал:
compares two reverse_iterators for equality
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции)
reverse_iterators заказов
Оригинал:
orders reverse_iterators
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции)
сравнивает два move_iterators
Оригинал:
compares two move_iterators
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции)
сравнивает два istream_iterators
Оригинал:
compares two istream_iterators
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции)
сравнивает два istreambuf_iterators
Оригинал:
compares two istreambuf_iterators
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции)
сравнивает два комплексных чисел или сложные и скаляр
Оригинал:
compares two complex numbers or a complex and a scalar
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции) [edit]
сравнивает два valarrays или valarray со значением
Оригинал:
compares two valarrays or a valarray with a value
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции) [edit]
сравнивает внутренних состояний двух псевдо-случайного числа двигателей
Оригинал:
compares the internal states of two pseudo-random number engines
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(функция) [edit]
сравнивает два объекта распределения
Оригинал:
compares two distribution objects
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(функция) [edit]
лексикографически сравнивает значения в контейнере
Оригинал:
lexicographically compares the values in the container
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(функция) [edit]
лексикографически сравнивает значения в двух результат матча
Оригинал:
lexicographically compares the values in the two match result
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции)
сравнивает два regex_iterators
Оригинал:
compares two regex_iterators
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции)
сравнивает два regex_token_iterators
Оригинал:
compares two regex_token_iterators
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции)
сравнивает два объекта thread::id
Оригинал:
compares two thread::id objects
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(функция)
автоматически генерирует операторы сравнения основанные на определённых пользователем operator== и operator<
(шаблон функции) [edit]

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

Приоритет операторов

Common operators
назначение incrementNJdecrement арифметики логичной сравнение memberNJaccess другие

a = b
a = rvalue
a += b
a -= b
a *= b
a /= b
a %= b
a &= b
a |= b
a ^= b
a <<= b
a >>= b

++a
--a
a++
a--

+a
-a
a + b
a - b
a * b
a / b
a % b
~a
a & b
a | b
a ^ b
a << b
a >> b

!a
a && b
a || b

a == b
a != b
a < b
a > b
a <= b
a >= b

a[b]
*a
&a
a->b
a.b
a->*b
a.*b

a(...)
a, b
(type) a
? :

Special operators
static_cast преобразует один тип на другой совместимый
типа
Оригинал:
static_cast converts one type to another compatible type
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
dynamic_cast преобразует виртуальный базовый класс для производных class
Оригинал:
dynamic_cast converts virtual base class to derived class
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
const_cast преобразует тип совместимого типа с различными cv qualifiers
Оригинал:
const_cast converts type to compatible type with different cv qualifiers
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
reinterpret_cast преобразует тип несовместимы type
Оригинал:
reinterpret_cast converts type to incompatible type
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
new выделяет memory
Оригинал:
new allocates memory
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
delete освобождает memory
Оригинал:
delete deallocates memory
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
sizeof запрашивает размер type
Оригинал:
sizeof queries the size of a type
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
sizeof... запрашивает размер Параметр пакета (начиная с C++11)
Оригинал:
sizeof... queries the size of a Параметр пакета (начиная с C++11)
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
typeid запрашивает сведения о типе type
Оригинал:
typeid queries the type information of a type
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
noexcept проверяет выражение может вызвать исключение (начиная с C++11)
Оригинал:
noexcept checks if an expression can throw an exception (начиная с C++11)
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
alignof запросов выравнивание требований типа (начиная с C++11)
Оригинал:
alignof queries alignment requirements of a type (начиная с C++11)
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.