C++20과 C++23을 활용한 “파이썬스러운” API 구현 #13: takewhile, dropwhile, accumulate
이제까지 파이썬 itertools와 more-itertools의 다양한 함수를 C++로 옮기며, 현대 C++이 제공하는 Ranges, Concepts, lazy evaluation을 통해 얼마나 파이썬스러운 코드를 구현할 수 있는지 확인했습니다. 이번에는 takewhile, dropwhile, 그리고 accumulate를 C++에서 흉내 내는 방법을 살펴보겠습니다.먼저 파이썬에서 이 함수들이 어떻게 동작하는지 간단히 살펴볼까요?from itertools import takewhile, dropwhile, accumulate# takewhile(predicate, iterable)# predicate가 참인 동안만 원소를 반환하다가, 거짓이 되는 순간 멈춤data = [1,2,3,4,5,1,2]for x ..