Tôi biết tìm phương thức tìm khóa được cung cấp trong std :: map và trả về trình lặp cho phần tử. Có anyway để tìm giá trị và nhận được một iterator để các yếu tố? Những gì tôi cần làm là để kiểm tra giá trị quy định tồn tại trong std :: map. Tôi đã làm điều này bằng cách lặp lại tất cả các mục trong bản đồ và so sánh. Nhưng tôi muốn biết là có cách tiếp cận nào tốt hơn cho việc này không.Kiểm tra giá trị tồn tại trong một tiêu chuẩn :: bản đồ - C++
Dưới đây là những gì tôi đã viết
bool ContainsValue(Type_ value)
{
bool found = false;
Map_::iterator it = internalMap.begin(); // internalMap is std::map
while(it != internalMap.end())
{
found = (it->second == value);
if(found)
break;
++it;
}
return found;
}
Sửa
Làm thế nào về việc sử dụng một bản đồ nội bộ mà các cửa hàng giá trị, tổ hợp phím. Vì vậy, tôi có thể gọi tìm thấy trên nó? Có phải tìm() trong std :: bản đồ đang tìm kiếm tuần tự không?
Cảm ơn
bạn đánh tôi với nó :) Câu trả lời hay. –