operator==,!=,<,<=,>,>=(std::unique_ptr)
De cppreference.com
< cpp | memory | unique 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 T1, class D1, class T2, class D2> bool operator==(const unique_ptr<T1, D1>& x, const unique_ptr<T2, D2>& y); |
(1) | (depuis 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) | (depuis 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) | (depuis 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) | (depuis 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) | (depuis 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) | (depuis C++11) |
template <class T, class D> bool operator==(const unique_ptr<T, D>& x, nullptr_t) noexcept; |
(7) | (depuis C++11) |
template <class T, class D> bool operator==(nullptr_t, const unique_ptr<T, D>& x) noexcept; |
(8) | (depuis C++11) |
template <class T, class D> bool operator!=(const unique_ptr<T, D>& x, nullptr_t) noexcept; |
(9) | (depuis C++11) |
template <class T, class D> bool operator!=(nullptr_t, const unique_ptr<T, D>& x) noexcept; |
(10) | (depuis C++11) |
template <class T, class D> bool operator<(const unique_ptr<T, D>& x, nullptr_t); |
(11) | (depuis C++11) |
template <class T, class D> bool operator<(nullptr_t, const unique_ptr<T, D>& y); |
(12) | (depuis C++11) |
template <class T, class D> bool operator<=(const unique_ptr<T, D>& x, nullptr_t); |
(13) | (depuis C++11) |
template <class T, class D> bool operator<=(nullptr_t, const unique_ptr<T, D>& y); |
(14) | (depuis C++11) |
template <class T, class D> bool operator>(const unique_ptr<T, D>& x, nullptr_t); |
(15) | (depuis C++11) |
template <class T, class D> bool operator>(nullptr_t, const unique_ptr<T, D>& y); |
(16) | (depuis C++11) |
template <class T, class D> bool operator>=(const unique_ptr<T, D>& x, nullptr_t); |
(17) | (depuis C++11) |
template <class T, class D> bool operator>=(nullptr_t, const unique_ptr<T, D>& y); |
(18) | (depuis C++11) |
Compare les valeurs de pointeurs de deux
unique_ptr
s ou un unique_ptr
et nullptr .Original:
Compares the pointer values of two
unique_ptr
s, 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.
Sommaire |
[modifier] Paramètres
x, y | - | unique_ptr s à comparer Original: unique_ptr s to compare The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
[modifier] Retourne la valeur
1) x.get() == y.get()
2) x.get() != y.get()
3)std::less<CT>()(x.get(), y.get()), où
CT
est 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)
[modifier] Exemple
#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'; }
Résultat :
p1 == p1: 1 p1 == p2: 0
[modifier] Voir aussi
renvoie un pointeur sur l'objet géré 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. (fonction membre publique) |