두 개의 std::list
리스트의 차이를 얻는 준비 함수가 있습니까?두 개의 std :: list리스트를 비교하고 다른 오브젝트 얻기
예를 들어 나는 list1: obj1, obj2, obj3, obj4
과 list2: obj2, obj3, obj4, obj5
입니다.
함수 결과는 list1_unique: obj1
, list1_and_list2: obj2, obj3, obj4
, list2_unique: obj5
이어야합니다.
(그것은 내 자신의 구현을 작성하기 어렵지 않다하지만 표준 기능을 선호하는) 당신의 목록을 정렬하는 경우 list1_and_list2
를 얻을 수 list1_unique
및 list2_unique
및 std::set_intersection
를 얻기 위해, (당신의 예제로 나타나는) std::set_difference
을
아마도 목록이 아닌 세트를 사용해야합니다. –
필자는 자주 요소를 추가/제거 (목록을 수동으로 정렬 유지)하기 때문에 목록을 사용하는 것이 좋습니다. '설정'은 '자동 정렬'때문에 덜 효과적 일 수 있습니다. – brigadir