2012-07-11 11 views

Odpowiedz

18

Korzystając std::find:

std::find(l.begin(), l.end(), x) != l.end() 
4

Zastosowanie std::find:

auto it = std::find(lst.begin(), lst.end(), x); 
if (it != lst.end()) 
{ 
    //x found 
} 
+0

dlaczego trzeba kondycję? Dlaczego nie po prostu std :: find()? – Andrew

+0

@Andrew: Tak. Nie potrzebujesz tego, ponieważ '==' jest zdefiniowane dla 'std :: pair '. – Nawaz

3

pomocą algorytmu std::find():

std::list<std::pair<int, int>> my_list; 
my_list.push_back(std::make_pair(1, 2)); 
my_list.push_back(std::make_pair(3, 2)); 

auto i = std::find(my_list.begin(), my_list.end(), std::make_pair(3, 2)); 
if (i != my_list.end()) 
{ 
    // Found it. 
} 
Powiązane problemy