generate_n
generate_n (지정 개수만큼 함수 결과로 채우기)
시작 위치부터 지정한 개수만큼의 요소에 생성기 함수의 호출 결과를 대입하는 알고리즘이에요. <algorithm> 헤더에 있어요.
출처: cppreference
본문
generate_n은 count가 양수이면 범위 [first, std::next(first, count))의 각 요소에 gen()을 연속 호출한 결과를 대입해요.
template< class OutputIt, class Size, class Generator >
OutputIt generate_n( OutputIt first, Size count, Generator gen ); // (1)
-
count > 0이면 각 요소에gen()결과를 대입하고, 마지막으로 생성한 요소 다음 반복자를 반환해요.
-
- 실행 정책 버전(C++17).
std::vector<int> v(5);
int n = 100;
std::generate_n(v.begin(), 3, [&n]{ return n += 10; });
// v == {110,120,130,0,0}
생성기 결과로 "앞의 N개"만 채우고 싶을 때 써요. generate의 개수 지정 버전이에요.