언어/Basic C++

[Basic C++] #54_STL 작업 알고리즘, for_each()

Hardii2 2022. 7. 20. 22:08

[Basic C++] #54_STL 작업 알고리즘, for_each()

STL 알고리즘 중 "for_each 알고리즘"에 대해 알아보겠습니다.

"전문가를 위한 C"의 17 항목, "STL 알고리즘 마스터하기"에 해당하는 내용입니다.

 

 


 

for_each()
#include <iostream>
#include <map>
#include <string>
#include <algorithm>
using namespace std;

int main()
{
	map <string, int> m{ {"One", 1}, {"Two", 2} };

	// for_each( 원본 범위의 첫 번째, 원본 범위의 마지막, 콜백 함수 or 람다 )
	for_each(cbegin(m), cend(m), [](const auto& p) {cout << p.first << "->" << p.second << '\n'; });
}

* 결과 화면

"for_each" 알고리즘은 주어진 범위의 각 항목에 대해 특정 콜백 함수를 호출합니다.

사실 범위 기반 for 루프가 더 간결하지만, 혹시 모를 상황에 대비하여 알아보았습니다.