RemoveCopyIf
나머지 요소의 순서를 방해하지 않고 소스 범위에서 대상 범위로 요소들을 복사합니다. 단, 술어를 만족하는 요소들은 복사에서 제외합니다. 새로운 대상 범위의 끝을 리턴합니다.
template <class In, class Out, class Pred>
Out RemoveCopyIf (
In first,
In last,
Out res,
Pred pred
);
Template 파라미터
- In
-
입력 반복자입니다.
- Out
-
출력 반복자입니다.
- Pred
-
단항 술어(Unary predicate)입니다.
파라미터
- first
-
요소들이 제거되는 범위의 1번째 요소의 위치를 설명하는 입력 반복자입니다.
- last
-
요소들이 제거되는 범위의 마지막 직전 요소의 위치를 설명하는 입력 반복자입니다.
- res
-
요소들이 복사되는 목적지 범위의 1번째 요소의 위치를 설명하는 출력 반복자입니다.
- pred
-
대체될 요소의 값은 단항 술어(unary predicate)를 만족해야 합니다.
리턴 값
목적지 범위의 새로운 끝 위치를 설명하는 순방향 반복자입니다. 이 위치는 술어를 만족하는 요소가 없는 나머지 시퀀스의 마지막 직전 요소입니다.
설명
RemoveCopyIf는 범위 [first, last)로부터 result로 시작하는 범위로 요소들을 복사합니다. 단, pred가 true인 요소들은 복사하지 않습니다.
리턴 값은 결과 범위의 끝입니다.
이 동작은 안정적입니다. 이것은 복사된 요소의 상대적인 순서가 범위 [first, last)의 순서와 동일하다는 것을 의미합니다.
참고사항
알고리즘