All I want to do is to check whether an element exists in the vector or not, so I can deal with each case.
if ( item_present )
do_this();
else
do_that(
(C++17 and above):
can use std::search
also
This is also useful for searching sequence of elements.
#include
#include
#include
template
bool search_vector(const Container& vec, const Container& searchvec)
{
return std::search(vec.begin(), vec.end(), searchvec.begin(), searchvec.end()) != vec.end();
}
int main()
{
std::vector v = {2,4,6,8};
//THIS WORKS. SEARCHING ONLY ONE ELEMENT.
std::vector searchVector1 = {2};
if(search_vector(v,searchVector1))
std::cout<<"searchVector1 found"< searchVector2 = {6,8};
if(search_vector(v,searchVector2))
std::cout<<"searchVector2 found"< searchVector3 = {8,6};
if(search_vector(v,searchVector3))
std::cout<<"searchVector3 found"<
Also there is flexibility of passing some search algorithms. Refer here.
https://en.cppreference.com/w/cpp/algorithm/search