operator==,!=,<,<=,>,>=(std::unique_ptr)
De cppreference.com
|
|
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. |
<metanoindex/>
<tbody> </tbody> template<class T1, class D1, class T2, class D2> bool operator==(const unique_ptr<T1, D1>& x, const unique_ptr<T2, D2>& y); |
(1) | (desde C++11) |
template<class T1, class D1, class T2, class D2> bool operator!=(const unique_ptr<T1, D1>& x, const unique_ptr<T2, D2>& y); |
(2) | (desde C++11) |
template<class T1, class D1, class T2, class D2> bool operator<(const unique_ptr<T1, D1>& x, const unique_ptr<T2, D2>& y); |
(3) | (desde C++11) |
template<class T1, class D1, class T2, class D2> bool operator<=(const unique_ptr<T1, D1>& x, const unique_ptr<T2, D2>& y); |
(4) | (desde C++11) |
template<class T1, class D1, class T2, class D2> bool operator>(const unique_ptr<T1, D1>& x, const unique_ptr<T2, D2>& y); |
(5) | (desde C++11) |
template<class T1, class D1, class T2, class D2> bool operator>=(const unique_ptr<T1, D1>& x, const unique_ptr<T2, D2>& y); |
(6) | (desde C++11) |
template <class T, class D> bool operator==(const unique_ptr<T, D>& x, nullptr_t) noexcept; |
(7) | (desde C++11) |
template <class T, class D> bool operator==(nullptr_t, const unique_ptr<T, D>& x) noexcept; |
(8) | (desde C++11) |
template <class T, class D> bool operator!=(const unique_ptr<T, D>& x, nullptr_t) noexcept; |
(9) | (desde C++11) |
template <class T, class D> bool operator!=(nullptr_t, const unique_ptr<T, D>& x) noexcept; |
(10) | (desde C++11) |
template <class T, class D> bool operator<(const unique_ptr<T, D>& x, nullptr_t); |
(11) | (desde C++11) |
template <class T, class D> bool operator<(nullptr_t, const unique_ptr<T, D>& y); |
(12) | (desde C++11) |
template <class T, class D> bool operator<=(const unique_ptr<T, D>& x, nullptr_t); |
(13) | (desde C++11) |
template <class T, class D> bool operator<=(nullptr_t, const unique_ptr<T, D>& y); |
(14) | (desde C++11) |
template <class T, class D> bool operator>(const unique_ptr<T, D>& x, nullptr_t); |
(15) | (desde C++11) |
template <class T, class D> bool operator>(nullptr_t, const unique_ptr<T, D>& y); |
(16) | (desde C++11) |
template <class T, class D> bool operator>=(const unique_ptr<T, D>& x, nullptr_t); |
(17) | (desde C++11) |
template <class T, class D> bool operator>=(nullptr_t, const unique_ptr<T, D>& y); |
(18) | (desde C++11) |
Compara os valores de ponteiro de duas
unique_ptrs, ou um unique_ptr e nullptr.Original:
Compares the pointer values of two
unique_ptrs, or a unique_ptr and nullptr.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.
Parâmetros
| x, y | - | unique_ptrs para comparar Original: unique_ptrs to compare The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
Valor de retorno
1) x.get() == y.get()
2) x.get() != y.get()
3)
std::less<CT>()(x.get(), y.get()), onde é CT std::common_type<unique_ptr<T1, D1>::pointer, unique_ptr<T2, D2>::pointer>::typeOriginal:
std::less<CT>()(x.get(), y.get()), where CT is std::common_type<unique_ptr<T1, D1>::pointer, unique_ptr<T2, D2>::pointer>::typeThe 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) !(y < x)
5) y < x
6) !(x < y)
7-8) !x
9-10) (bool)x
11) std::less<unique_ptr<T,D>::pointer>()(x.get(), nullptr)
12) std::less<unique_ptr<T,D>::pointer>()(nullptr, y.get())
13) nullptr < x
14) y < nullptr
15) !(nullptr < x)
16) !(y < nullptr)
17) !(x < nullptr)
18) !(nullptr < y)
Exemplo
#include <iostream>
#include <memory>
int main()
{
std::unique_ptr<int> p1(new int(42));
std::unique_ptr<int> p2(new int(42));
std::cout << "p1 == p1: " << (p1 == p1) << '\n';
// p1 and p2 point to different memory locations, so p1 != p2
std::cout << "p1 == p2: " << (p1 == p2) << '\n';
}
Saída:
p1 == p1: 1
p1 == p2: 0
Veja também
retorna um ponteiro para o objeto gerenciado 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. (função pública membro) | |