| title | <tuple> operators | Microsoft Docs | ||||||
|---|---|---|---|---|---|---|---|
| ms.custom | |||||||
| ms.date | 11/04/2016 | ||||||
| ms.reviewer | |||||||
| ms.suite | |||||||
| ms.tgt_pltfrm | |||||||
| ms.topic | article | ||||||
| f1_keywords |
|
||||||
| dev_langs |
|
||||||
| ms.assetid | f25752dc-d3e2-4e12-b5ac-9a8682ca60ed | ||||||
| caps.latest.revision | 13 | ||||||
| manager | ghogen |
| operator!= | operator> | operator>= |
| operator< | operator<= | operator== |
Compare tuple objects for inequality.
template <class T1, class T2, ..., class TN,
class U1, class U2, ..., class UN>
bool operator!=(const tuple<T1, T2, ..., TN>& tpl1,
const tuple<U1, U2, ..., UN>& tpl2);
TN
The type of the Nth tuple element.
The function returns false when N is 0, otherwise get<0>(tpl1) != get<0>(tpl2) || get<1>(tpl1) != get<1>(tpl2) || ... || get<N - 1>(tpl1) == get<N - 1>(tpl2).
// std__tuple__operator_ne.cpp
// compile with: /EHsc
#include <tuple>
#include <iostream>
typedef std::tuple<int, double, int, double> Mytuple;
int main() {
Mytuple c0(0, 1, 2, 3);
// display contents " 0 1 2 3"
std::cout << " " << std::get<0>(c0);
std::cout << " " << std::get<1>(c0);
std::cout << " " << std::get<2>(c0);
std::cout << " " << std::get<3>(c0);
std::cout << std::endl;
Mytuple c1 = std::make_tuple(4, 5, 6, 7);
// display contents " 4 5 6 7"
std::cout << " " << std::get<0>(c0);
std::cout << " " << std::get<1>(c0);
std::cout << " " << std::get<2>(c0);
std::cout << " " << std::get<3>(c0);
std::cout << std::endl;
// display results of comparisons
std::cout << std::boolalpha << " " << (c0 != c0);
std::cout << std::endl;
std::cout << std::boolalpha << " " << (c0 != c1);
std::cout << std::endl;
return (0);
} 0 1 2 3
0 1 2 3
false
true
Compare tuple objects for less.
template <class T1, class T2, ..., class TN,
class U1, class U2, ..., class UN>
bool operator<(const tuple<T1, T2, ..., TN>& tpl1,
const tuple<U1, U2, ..., UN>& tpl2);
TN
The type of the Nth tuple element.
The function returns true when N is greater than 0 and the first differing value in tpl1 compares less than the corresponding value in tpl2, otherwise it returns false.
// std__tuple__operator_lt.cpp
// compile with: /EHsc
#include <tuple>
#include <iostream>
typedef std::tuple<int, double, int, double> Mytuple;
int main() {
Mytuple c0(0, 1, 2, 3);
// display contents " 0 1 2 3"
std::cout << " " << std::get<0>(c0);
std::cout << " " << std::get<1>(c0);
std::cout << " " << std::get<2>(c0);
std::cout << " " << std::get<3>(c0);
std::cout << std::endl;
Mytuple c1 = std::make_tuple(4, 5, 6, 7);
// display contents " 4 5 6 7"
std::cout << " " << std::get<0>(c0);
std::cout << " " << std::get<1>(c0);
std::cout << " " << std::get<2>(c0);
std::cout << " " << std::get<3>(c0);
std::cout << std::endl;
// display results of comparisons
std::cout << std::boolalpha << " " << (c0 < c0);
std::cout << std::endl;
std::cout << std::boolalpha << " " << (c0 < c1);
std::cout << std::endl;
return (0);
} 0 1 2 3
0 1 2 3
false
true
Compare tuple objects for less or equal.
template <class T1, class T2, ..., class TN,
class U1, class U2, ..., class UN>
bool operator<=(const tuple<T1, T2, ..., TN>& tpl1,
const tuple<U1, U2, ..., UN>& tpl2);
TN
The type of the Nth tuple element.
The function returns !(tpl2 < tpl1).
// std__tuple__operator_le.cpp
// compile with: /EHsc
#include <tuple>
#include <iostream>
typedef std::tuple<int, double, int, double> Mytuple;
int main() {
Mytuple c0(0, 1, 2, 3);
// display contents " 0 1 2 3"
std::cout << " " << std::get<0>(c0);
std::cout << " " << std::get<1>(c0);
std::cout << " " << std::get<2>(c0);
std::cout << " " << std::get<3>(c0);
std::cout << std::endl;
Mytuple c1 = std::make_tuple(4, 5, 6, 7);
// display contents " 4 5 6 7"
std::cout << " " << std::get<0>(c0);
std::cout << " " << std::get<1>(c0);
std::cout << " " << std::get<2>(c0);
std::cout << " " << std::get<3>(c0);
std::cout << std::endl;
// display results of comparisons
std::cout << std::boolalpha << " " << (c0 <= c0);
std::cout << std::endl;
std::cout << std::boolalpha << " " << (c1 <= c0);
std::cout << std::endl;
return (0);
} 0 1 2 3
0 1 2 3
true
false
Compare tuple objects for equality.
template <class T1, class T2, ..., class TN,
class U1, class U2, ..., class UN>
bool operator==(const tuple<T1, T2, ..., TN>& tpl1,
const tuple<U1, U2, ..., UN>& tpl2);
TN
The type of the Nth tuple element.
The function returns true when N is 0, otherwise get<0>(tpl1) == get<0>(tpl2) && get<1>(tpl1) == get<1>(tpl2) && ... && get<N - 1>(tpl1) == get<N - 1>(tpl2).
// std__tuple__operator_eq.cpp
// compile with: /EHsc
#include <tuple>
#include <iostream>
typedef std::tuple<int, double, int, double> Mytuple;
int main() {
Mytuple c0(0, 1, 2, 3);
// display contents " 0 1 2 3"
std::cout << " " << std::get<0>(c0);
std::cout << " " << std::get<1>(c0);
std::cout << " " << std::get<2>(c0);
std::cout << " " << std::get<3>(c0);
std::cout << std::endl;
Mytuple c1 = std::make_tuple(4, 5, 6, 7);
// display contents " 4 5 6 7"
std::cout << " " << std::get<0>(c0);
std::cout << " " << std::get<1>(c0);
std::cout << " " << std::get<2>(c0);
std::cout << " " << std::get<3>(c0);
std::cout << std::endl;
// display results of comparisons
std::cout << std::boolalpha << " " << (c0 == c0);
std::cout << std::endl;
std::cout << std::boolalpha << " " << (c0 == c1);
std::cout << std::endl;
return (0);
} 0 1 2 3
0 1 2 3
true
false
Compare tuple objects for greater.
template <class T1, class T2, ..., class TN,
class U1, class U2, ..., class UN>
bool operator>(const tuple<T1, T2, ..., TN>& tpl1,
const tuple<U1, U2, ..., UN>& tpl2);
TN
The type of the Nth tuple element.
The function returns tpl2 < tpl1.
// std__tuple__operator_gt.cpp
// compile with: /EHsc
#include <tuple>
#include <iostream>
typedef std::tuple<int, double, int, double> Mytuple;
int main() {
Mytuple c0(0, 1, 2, 3);
// display contents " 0 1 2 3"
std::cout << " " << std::get<0>(c0);
std::cout << " " << std::get<1>(c0);
std::cout << " " << std::get<2>(c0);
std::cout << " " << std::get<3>(c0);
std::cout << std::endl;
Mytuple c1 = std::make_tuple(4, 5, 6, 7);
// display contents " 4 5 6 7"
std::cout << " " << std::get<0>(c0);
std::cout << " " << std::get<1>(c0);
std::cout << " " << std::get<2>(c0);
std::cout << " " << std::get<3>(c0);
std::cout << std::endl;
// display results of comparisons
std::cout << std::boolalpha << " " << (c0 > c0);
std::cout << std::endl;
std::cout << std::boolalpha << " " << (c1 > c0);
std::cout << std::endl;
return (0);
} 0 1 2 3
0 1 2 3
false
true
Compare tuple objects for greater or equal.
template <class T1, class T2, ..., class TN,
class U1, class U2, ..., class UN>
bool operator>=(const tuple<T1, T2, ..., TN>& tpl1,
const tuple<U1, U2, ..., UN>& tpl2);
TN
The type of the Nth tuple element.
The function returns !(tpl1 < tpl2).
// std__tuple__operator_ge.cpp
// compile with: /EHsc
#include <tuple>
#include <iostream>
typedef std::tuple<int, double, int, double> Mytuple;
int main() {
Mytuple c0(0, 1, 2, 3);
// display contents " 0 1 2 3"
std::cout << " " << std::get<0>(c0);
std::cout << " " << std::get<1>(c0);
std::cout << " " << std::get<2>(c0);
std::cout << " " << std::get<3>(c0);
std::cout << std::endl;
Mytuple c1 = std::make_tuple(4, 5, 6, 7);
// display contents " 4 5 6 7"
std::cout << " " << std::get<0>(c0);
std::cout << " " << std::get<1>(c0);
std::cout << " " << std::get<2>(c0);
std::cout << " " << std::get<3>(c0);
std::cout << std::endl;
// display results of comparisons
std::cout << std::boolalpha << " " << (c0 >= c0);
std::cout << std::endl;
std::cout << std::boolalpha << " " << (c0 >= c1);
std::cout << std::endl;
return (0);
} 0 1 2 3
0 1 2 3
true
false