1. std::transform을 쓰는 방법
#include <algorithm>
#include <string>
std::string str = "Hello World";
std::transform(str.begin(), str.end(),str.begin(), ::toupper);
범위에 있는 모든 원소에 대해 function을 수행한 결과를 다른 범위에 저장
toupper 혹은 tolower 앞에 :: 꼭 붙어야한다.
원형은
template< class InputIt, class OutputIt, class UnaryOperation >
OutputIt transform( InputIt first1, InputIt last1, OutputIt d_first,
UnaryOperation unary_op );
//또는
template< class InputIt1, class InputIt2, class OutputIt, class BinaryOperation >
OutputIt transform( InputIt1 first1, InputIt1 last1, InputIt2 first2,
OutputIt d_first, BinaryOperation binary_op );
파라미터
first1
,last1
:transform
할 첫 번째 원소first2
:transform
할 2번째 범위의 첫 번째 원소d_first
:transform
결과를 저장할 범위의 첫 번째 위치unary_op
: 객체를 바꾸는unary
함수bianry_op
: 객체를 바꾸는binary
함수
'Programming Language > C++' 카테고리의 다른 글
STL list insert, erase (C++) (1) | 2019.09.02 |
---|---|
vector upper_bound, lower_bound 사용 (C++) (0) | 2019.09.01 |
priority_queue (0) | 2019.08.14 |
(C++) abs 함수의 사용 (0) | 2019.08.07 |
(C++) list STL 출력 및 iterator (0) | 2019.08.04 |