operator== <tuple>

 

Compare tuple objects for equality.

Syntax

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

<tuple>
operator!= <tuple>
operator< <tuple>
operator<= <tuple>
operator> <tuple>
operator>= <tuple>