카테고리 없음

set의 성질을 더럽히는 타입매개변수

НooпeУ 2012. 10. 9. 16:48

 1 #include<set>

  2 #include<string>

  3 #include<algorithm>

  4 #include<iterator>

  5 #include<iostream>

  6 

  7 using namespace std;

  8 

  9 

 10 

 11 int main()

 12 {

 13     set<int , less_equal<int> > s;

 14 

 15     s.insert(10);

 16     s.insert(10);

 17 

 18     //set성질을 더럽힌 less_equal 타입매개변수

 19     for(set<int>::const_iterator iter = s.begin(); iter != s.end(); iter++)

 20     {   

 21         cout << *iter << endl;

 22     }

 23     return 0;

 24 }   


집합의 성질을 더럽힌다. 위의 예제에서 10은 두번 출력된다.

set의 동등성 검사 로직

!(10 <= 10) && !(10 <=10)

이 결과는 false이므로 , 같은 값이 들어갔음에도 불구하고 insert수행이 일어나게 된다.