operator== <tuple>

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);

Parameters

  • TN
    The type of the Nth tuple element.

Remarks

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).

Example

 

// std_tr1__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

Requirements

Header: <tuple>

Namespace: std

See Also

Reference

<tuple>

operator!= <tuple>

operator< <tuple>

operator<= <tuple>

operator> <tuple>

operator>= <tuple>