Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Toán tử gán multimap::operator= trong C++ STL

Trong bài viết này, chúng ta sẽ thảo luận về cách hoạt động, cú pháp và ví dụ của toán tử gán multimap::operator= trong C++ STL.

Multimap trong C++ STL là gì?

Multimap là container liên kết, tương tự như map. Nó lưu trữ các phần tử dạng cặp key-value theo thứ tự cụ thể. Multimap cho phép nhiều phần tử có cùng một key. Dữ liệu luôn được sắp xếp theo key.

Toán tử gán multimap::operator= là gì?

multimap::operator= là toán tử gán. Toán tử này sao chép các phần tử từ container này sang container khác, bằng cách ghi đè nội dung hiện tại của container đích.

Cú pháp

multiMap_name1 = multimap_name2;

Tham số

Bên trái là multimap đích, bên phải là multimap nguồn. Nội dung của multimap nguồn được sao chép sang multimap đích.

Giá trị trả về

Toán tử không có giá trị trả về.

Ví dụ minh họa

#include <iostream>
#include <map>
using namespace std;

int main() {
    multimap<int, char> mul_1;
    multimap<int, char> mul_2;
    multimap<int, char>::iterator i;
    
    // Chèn vào mul_1
    mul_1.insert(make_pair(0, 'a'));
    mul_1.insert(make_pair(1, 'b'));
    mul_1.insert(make_pair(2, 'c'));
    mul_1.insert(make_pair(3, 'd'));
    
    // Chèn vào mul_2
    mul_2.insert(make_pair(4, 'e'));
    mul_2.insert(make_pair(5, 'f'));
    mul_2.insert(make_pair(6, 'g'));
    
    // Gán mul_2 vào mul_1
    mul_1 = mul_2;
    
    // Phần tử của mul_1 sau gán
    cout << "Phần tử trong multimap1:\n";
    for (i = mul_1.begin(); i != mul_1.end(); i++) {
        cout << (*i).first << " " << (*i).second << "\n";
    }
    
    // Phần tử của mul_2 (giữ nguyên)
    cout << "\nPhần tử trong multimap2:\n";
    for (i = mul_2.begin(); i != mul_2.end(); i++) {
        cout << (*i).first << " " << (*i).second << "\n";
    }
    
    return 0;
}

Kết quả

Phần tử trong multimap1:
4 e
5 f
6 g

Phần tử trong multimap2:
4 e
5 f
6 g