Tôi nghĩ rằng bạn đang tìm kiếm std::any_of
, mà sẽ trả về một câu trả lời đúng/sai để phát hiện nếu một phần tử nằm trong một container (mảng, vector, deque vv)
int val = SOME_VALUE; // this is the value you are searching for
bool exists = std::any_of(std::begin(myArray), std::end(myArray), [&](int i)
{
return i == val;
});
Nếu bạn muốn biết nguyên tố ở đâu, std::find
sẽ trả về một trình lặp cho phần tử đầu tiên khớp với bất kỳ tiêu chí nào bạn cung cấp (hoặc một biến vị ngữ mà bạn cung cấp).
int val = SOME_VALUE;
int* pVal = std::find(std::begin(myArray), std::end(myArray), val);
if (pVal == std::end(myArray))
{
// not found
}
else
{
// found
}
Nguồn
2013-10-10 15:08:49
Nhìn vào ví dụ cho [ 'std :: find'] (http://www.cplusplus.com/reference/algorithm/find/). – DCoder