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 hàm map::at() trong C++ STL.
Map trong C++ STL là gì?
Map là container liên hợp, cho phép lưu trữ các phần tử được hình thành từ tổ hợp khóa (key) và giá trị ánh xạ (mapped value) theo một thứ tự xác định. Trong container map, dữ liệu luôn được sắp xếp nội bộ nhờ các khóa liên kết. Các giá trị trong map được truy xuất bằng khóa duy nhất của chúng.
map::at() là gì?
map::at() là hàm built-in trong C++ STL, được định nghĩa trong header
Nếu khóa không khớp với bất kỳ khóa nào trong container map, hàm sẽ ném ngoại lệ out_of_range.
Cú pháp
map_name.at(key& k);
Tham số
Hàm chấp nhận một tham số:
Giá trị trả về
Hàm trả về tham chiếu đến giá trị liên kết với khóa k cần tìm.
Ví dụ
Đầu vào
std::map<int> mymap; mymap.insert({'a', 10}); mymap.insert({'b', 20}); mymap.insert({'c', 30}); mymap.at('b');Đầu ra
b:20
Ví dụ hoàn chỉnh
#include <bits/stdc++.h> using namespace std; int main() { map<int, int> TP_1; map<int, int> TP_2; TP_1[1] = 10; TP_1[2] = 20; TP_1[3] = 30; TP_1[4] = 40; TP_2[5] = 50; TP_2[6] = 60; TP_2[7] = 70; cout<<"Phần tử tại TP_1[1] = "<< TP_1.at(1) << endl; cout<<"Phần tử tại TP_1[2] = "<< TP_1.at(2) << endl; cout<<"Phần tử tại TP_1[3] = "<< TP_1.at(3) << endl; cout<<"\nPhần tử tại TP_2[7] = "<< TP_2.at(7) << endl; cout<<"Phần tử tại TP_2[5] = "<< TP_2.at(5) << endl; return 0; }Kết quả
Phần tử tại TP_1[1] = 10 Phần tử tại TP_1[2] = 20 Phần tử tại TP_1[3] = 30 Phần tử tại TP_1[7] = 70 Phần tử tại TP_1[5] = 50