![Phân tích tư tưởng của nhân dân qua đoạn thơ: Những người vợ nhớ chồng… Những cuộc đời đã hóa sông núi ta trong Đất nước của Nguyễn Khoa Điềm](https://timtailieu.net/upload/document/136415/phan-tich-tu-tuong-cua-nhan-dan-qua-doan-tho-039-039-nhung-nguoi-vo-nho-chong-nhung-cuoc-doi-da-hoa-song-nui-ta-039-039-trong-dat-nuoc-cua-nguyen-khoa-136415.jpg)
LẬP TRÌNH C nâng cao -BÀI 11 – CÁC BỘ LƯU TRỮ LIÊN KẾT
Số trang: 6
Loại file: pdf
Dung lượng: 137.24 KB
Lượt xem: 15
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
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) ......
Nội dung trích xuất từ tài liệu:
LẬP TRÌNH C nâng cao -BÀI 11 – CÁC BỘ LƯU TRỮ LIÊN KẾT LẬP TRÌNH C/C++ NÂNG CAOYê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ậphợ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 valuenày được truy xuất tuần tự theo vị trí của chúng trongbộ 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ếtMapCODE#includemap ánh xạ từ một char* đến một intmap mapInt;mapInt[one] = 1;cout};typedef map MP;typedef MP::iterator MPI;typedef MP::const_iterator MPCI;typedef MP::value_type MPVT;void display(const MP& mp){for(MPCI i=mp.begin();i!=mp.end();++i) coutDùng comparator để so sánhCODEclass comparePerson{public:bool operator()(Person p1,Person p2){return p1.name.compare(p2.name);}};typedef map MAP;MAP pMap;Person p=new Person(...);MAP::iterator i=pMap.find(d);if(i==pMap.end()) pMap.insert(MAP::value_type(d,1));Dùng comparator để sắp xếpCODEclass comparePerson{public:bool operator()(const Person& p1,const Person& p2){return p1.name.compare(p2.name);}};typedef map MP;MP mapPerson;Person p(Viet);mapPerson.insert(pair(one,Person(Nam)));mapPerson.insert(pair(two,Person(Viet)));mapPerson.insert(pair(three,Person(An)));display(mapPerson);Bạn lưu ý là tất cả các asociative container đều có xây dựng sẵn comparatormặc định là less (trong thư viện functional)Nghĩa là khi bạn khai báoCODEmap mapInt;thực ra làCODEmap mapInt;Ví dụCODEtypedef map MI;typedef map::iterator MII;MI m;m[c] = 1;m[b] = 2;m[a] = 3;for(MII i=m.begin();i!=m.end();++i)coutp.sort(AgeSort());//using sort with comparatorfor(LP::const_iterator i=p.begin();i!=p.end();++i) coutmultisetmultiset cũng giống set ngoại trừ một điều, mỗi key có thể ánh xạ đến nhiềuhơn một value, nói cách khác là nhiều value trongmultiset có chung một keyBạn có thể thắc mắc điều này chẳng có ý nghĩa gì, vì trong set thì key cũngchính là value, Không, chúng có khác đấy, thử xemnhé:CODE#includeset s;s.insert(1);s.insert(1);for(set::iterator i=s.begin();i!=s.end();++i) cout
Nội dung trích xuất từ tài liệu:
LẬP TRÌNH C nâng cao -BÀI 11 – CÁC BỘ LƯU TRỮ LIÊN KẾT LẬP TRÌNH C/C++ NÂNG CAOYê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ậphợ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 valuenày được truy xuất tuần tự theo vị trí của chúng trongbộ 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ếtMapCODE#includemap ánh xạ từ một char* đến một intmap mapInt;mapInt[one] = 1;cout};typedef map MP;typedef MP::iterator MPI;typedef MP::const_iterator MPCI;typedef MP::value_type MPVT;void display(const MP& mp){for(MPCI i=mp.begin();i!=mp.end();++i) coutDùng comparator để so sánhCODEclass comparePerson{public:bool operator()(Person p1,Person p2){return p1.name.compare(p2.name);}};typedef map MAP;MAP pMap;Person p=new Person(...);MAP::iterator i=pMap.find(d);if(i==pMap.end()) pMap.insert(MAP::value_type(d,1));Dùng comparator để sắp xếpCODEclass comparePerson{public:bool operator()(const Person& p1,const Person& p2){return p1.name.compare(p2.name);}};typedef map MP;MP mapPerson;Person p(Viet);mapPerson.insert(pair(one,Person(Nam)));mapPerson.insert(pair(two,Person(Viet)));mapPerson.insert(pair(three,Person(An)));display(mapPerson);Bạn lưu ý là tất cả các asociative container đều có xây dựng sẵn comparatormặc định là less (trong thư viện functional)Nghĩa là khi bạn khai báoCODEmap mapInt;thực ra làCODEmap mapInt;Ví dụCODEtypedef map MI;typedef map::iterator MII;MI m;m[c] = 1;m[b] = 2;m[a] = 3;for(MII i=m.begin();i!=m.end();++i)coutp.sort(AgeSort());//using sort with comparatorfor(LP::const_iterator i=p.begin();i!=p.end();++i) coutmultisetmultiset cũng giống set ngoại trừ một điều, mỗi key có thể ánh xạ đến nhiềuhơn một value, nói cách khác là nhiều value trongmultiset có chung một keyBạn có thể thắc mắc điều này chẳng có ý nghĩa gì, vì trong set thì key cũngchính là value, Không, chúng có khác đấy, thử xemnhé:CODE#includeset s;s.insert(1);s.insert(1);for(set::iterator i=s.begin();i!=s.end();++i) cout
Tìm kiếm theo từ khóa liên quan:
kỹ thuật lập trình lập trình c/c++ nâng cao lập trình c/c++ thủ thuật lập trình c ngôn ngữ lập trình nâng caTài liệu liên quan:
-
Kỹ thuật lập trình trên Visual Basic 2005
148 trang 290 0 0 -
NGÂN HÀNG CÂU HỎI TRẮC NGHIỆM THIẾT KẾ WEB
8 trang 228 0 0 -
Giới thiệu môn học Ngôn ngữ lập trình C++
5 trang 217 0 0 -
Bài giảng Nhập môn về lập trình - Chương 1: Giới thiệu về máy tính và lập trình
30 trang 184 0 0 -
Luận văn: Nghiên cứu kỹ thuật giấu tin trong ảnh Gif
33 trang 156 0 0 -
Báo cáo thực tập Công nghệ thông tin: Lập trình game trên Unity
27 trang 122 0 0 -
Giáo trình về phân tích thiết kế hệ thống thông tin
113 trang 116 0 0 -
LUẬN VĂN: Tìm hiểu kỹ thuật tạo bóng cứng trong đồ họa 3D
41 trang 111 0 0 -
Bài giảng Kỹ thuật lập trình - Chương 10: Tổng kết môn học (Trường Đại học Bách khoa Hà Nội)
67 trang 109 0 0 -
Giáo trình Nhập môn lập trình VB6: Phần 2
184 trang 99 0 0