LẬP TRÌNH C nâng cao -BÀI 11 – CÁC BỘ LƯU TRỮ LIÊN KẾT

BÀI 11 – ASSOCIATIVE CONTAINER (CÁC BỘ LƯU TRỮ LIÊN KẾT) Bao gồm map (ánh xạ) multimap (đa ánh xạ) set (tập hợp) multiset (đa tập hợp) Sự khác nhau giữa các associative container và sequential container ở một điểm: -các sequential container lưu trữ các phần tử (gọi là các value) và các value này được truy xuất tuần tự theo vị trí của chúng trong bộ lưu trữ -các associative container lưu trữ các phần tử (gọi là các value) và các khóa (gọi là các key) | LẬP TRÌNH C C NÂNG CAO Yêu cầu trước khi đọc học xong Lập trình C C căn bản BÀI 11 - ASSOCIATIVE CONTAINER CÁC BỘ LƯU TRỮ LIÊN KẾT Bao gồm map ánh xạ multimap đa ánh xạ set tập hợp multiset đa tập hợp Sự khác nhau giữa các associative container và sequential container ở một điểm -các sequential container lưu trữ các phần tử gọi là các value và các value này được truy xuất tuần tự theo vị trí của chúng trong bộ lưu trữ -các associative container lưu trữ các phần tử gọi là các value và các khóa gọi là các key liên kết với các value và các value này được truy xuất theo các key mà chúng có liên kết Map CODE include map map char int ánh xạ từ một char đến một int map char int mapInt mapInt one 1 cout mapInt one Ánh xạ từ một key đến một value. Ví dụ sau key là lớp string value là lớp Person CODE class Person public string name Person string name name name friend ostream operator ostream os const Person p os return os typedef map string Person MP typedef MP iterator MPI typedef MP const_iterator MPCI typedef MP value_type MPVT void display const MP mp for MPCI i i i cout i .first i .second endl int main MP mapPerson Person p Viet MPVT one p display mapPerson return 0 Giải thích value_type dùng để khởi tạo một cặp key value cho một ánh xạ. Còn một cách khác là dùng lớp pair của thư viện utility. Có 2 cách Cách một là khởi tạo luôn một instance của lớp pair CODE include utility pair string Person two Person Nam CODE pair string Person pr make_pair string two Person Nam pr value_type thực chất cũng là một pair Comparator Một functor dùng để so sánh sắp xếp etc các phần tử trong một map gọi là một comparator. Khi đó map thay vì có 2 argument như map key K value V thì có 3 argument là map key K value V comparator C Dùng comparator để so sánh CODE class comparePerson public bool operator Person p1 Person p2 return typedef map Person int comparePerson MAP MAP pMap Person p new .

Không thể tạo bản xem trước, hãy bấm tải xuống
TÀI LIỆU MỚI ĐĂNG
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.