안녕 세상아,

[c++/알고리즘] transform 사용법 본문

c++ 개념

[c++/알고리즘] transform 사용법

돈 많은 백수가 되고싶다 2024. 10. 17. 18:54

std::transform 함수는 범위에 있는 원소를 변환할 때 사용하는 함수로, algorithm 헤더에 포함되어 있다.

 

이 함수는 입력 범위의 요소에 대해 지정된 변환 작업(예: 대소문자 변환, 산술 연산)을 수행하고, 결과를 출력 범위에 저장한다. 

 

<기본적인 사용법>

#include <algorithm> // std::transform
#include <iostream>   
#include <string>    
#include <cctype>     // for std::tolower

using namespace std;

int main() {
    string str = "Hello, World!";
    
    // transform을 사용해 모든 문자를 소문자로 변환
    transform(str.begin(), str.end(), str.begin(), ::tolower);
    
    cout << str << endl; // 출력: hello, world!

    return 0;
}

 

transform의 파라미터

 

  • 첫 번째 파라미터: 변환할 범위의 시작 반복자.
  • 두 번째 파라미터: 변환할 범위의 끝 반복자.
  • 세 번째 파라미터: 결과를 저장할 위치의 시작 반복자 (이 위치에 변환된 값이 저장됨).
  • 네 번째 파라미터: 변환 함수 또는 함수 객체 (여기서는 ::tolower가 사용됨).