std::shared_ptr::operator==, !=, <, <=, >, >=
Материал из cppreference.com
< cpp | memory | shared ptr
|
|
This page has been machine-translated from the English version of the wiki using Google Translate.
The translation may contain errors and awkward wording. Hover over text to see the original version. You can help to fix errors and improve the translation. For instructions click here. |
| template <class T, class U> bool operator==(const shared_ptr<T>& lhs, const shared_ptr<U>& rhs); |
(1) | |
| template <class T, class U> bool operator!=(const shared_ptr<T>& lhs, const shared_ptr<U>& rhs); |
(2) | |
| template <class T, class U> bool operator<(const shared_ptr<T>& lhs, const shared_ptr<U>& rhs); |
(3) | |
| template <class T, class U> bool operator>(const shared_ptr<T>& lhs, const shared_ptr<U>& rhs); |
(4) | |
| template <class T, class U> bool operator<=(const shared_ptr<T>& lhs, const shared_ptr<U>& rhs); |
(5) | |
| template <class T, class U> bool operator>=(const shared_ptr<T>& lhs, const shared_ptr<U>& rhs); |
(6) | |
| template <class T> bool operator==(const shared_ptr<T>& lhs, std::nullptr_t rhs); |
(7) | |
| template <class T> bool operator==(std::nullptr_t lhs, const shared_ptr<T>& rhs); |
(8) | |
| template <class T> bool operator!=(const shared_ptr<T>& lhs, std::nullptr_t rhs); |
(9) | |
| template <class T> bool operator!=(std::nullptr_t lhs, const shared_ptr<T>& rhs); |
(10) | |
| template <class T> bool operator<(const shared_ptr<T>& lhs, std::nullptr_t rhs); |
(11) | |
| template <class T> bool operator<(std::nullptr_t lhs, const shared_ptr<T>& rhs); |
(12) | |
| template <class T> bool operator<=(const shared_ptr<T>& lhs, std::nullptr_t rhs); |
(13) | |
| template <class T> bool operator<=(std::nullptr_t lhs, const shared_ptr<T>& rhs); |
(14) | |
| template <class T> bool operator>(const shared_ptr<T>& lhs, std::nullptr_t rhs); |
(15) | |
| template <class T> bool operator>(std::nullptr_t lhs, const shared_ptr<T>& rhs); |
(16) | |
| template <class T> bool operator>=(const shared_ptr<T>& lhs, std::nullptr_t rhs); |
(17) | |
| template <class T> bool operator>=(std::nullptr_t lhs, const shared_ptr<T>& rhs); |
(18) | |
Сравнивает два объекта
shared_ptr<T> или сравнивает shared_ptr<T> с нулевого указателя.Original:
Compares two
shared_ptr<T> objects or compares shared_ptr<T> with a null pointer.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Обратите внимание, что операторы сравнения для
shared_ptr просто сравнить значения указателей; реальные объекты указал на которые не сравнивать. После operator< определены для shared_ptr позволяет shared_ptrs, которые будут использоваться в качестве ключей в ассоциативных контейнерах, как std::map и std::set.Original:
Note that the comparison operators for
shared_ptr simply compare pointer values; the actual objects pointed to are not compared. Having operator< defined for shared_ptr allows shared_ptrs to be used as keys in associative containers, like std::map and std::set.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Содержание |
[править] Параметры
| lhs | - | Левая
shared_ptr для сравнения Original: the left-hand shared_ptr to compare The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
| rhs | - | Правая
shared_ptr для сравнения Original: the right-hand shared_ptr to compare The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
[править] Возвращаемое значение
1) lhs.get() == rhs.get()
2) !(lhs == rhs)
3)std::less<V>()(lhs.get(), rhs.get()), где V является составной указатель type
Т * и U *
| Этот раздел не завершён Причина: needs definition from §5.9/2) |
Original:
std::less<V>()(lhs.get(), rhs.get()), where V is the composite pointer type
of T* and U*
| Этот раздел не завершён Причина: needs definition from §5.9/2) |
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
4) rhs < lhs
5) !(rhs < lhs)
6) !(lhs < rhs)
7) !lhs
8) !rhs
9) (bool)lhs
10) (bool)rhs
11) std::less<T*>()(lhs.get(), nullptr)
12) std::less<T*>()(nullptr, rhs.get())
13) nullptr < lhs
14) rhs < nullptr
15) !(nullptr < lhs)
16) !(rhs < nullptr)
17) !(lhs < nullptr)
18) !(nullptr < rhs)
[править] Исключения
[править] Пример
| Этот раздел не завершён Причина: нет примера |
[править] См. также
| возвращает указатель на управляемый объект Original: returns a pointer to the managed object The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (public функция-член) | |