| note | // implicitly declared: |
|---|---|
| copy (1) | pair& operator= (const pair& pr); |
| copy (1) | pair& operator= (const pair& pr);template <class U, class V> pair& operator= (const pair<U,V>& pr); |
|---|---|
| move (2) | pair& operator= (pair&& pr) noexcept (is_nothrow_move_assignable<first_type>::value && is_nothrow_move_assignable<second_type>::value);template <class U, class V> pair& operator= (pair<U,V>&& pr); |
pr.first, and member second is assigned pr.second.*this
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// pair::operator= example
#include <utility> // std::pair, std::make_pair
#include <string> // std::string
#include <iostream> // std::cout
int main () {
std::pair <std::string,int> planet, homeplanet;
planet = std::make_pair("Earth",6371);
homeplanet = planet;
std::cout << "Home planet: " << homeplanet.first << '\n';
std::cout << "Planet size: " << homeplanet.second << '\n';
return 0;
}
Home planet: Earth Planet size: 6371