std::generate
-
[37] - GeneratorsGraphics 2021. 8. 10. 14:08
Fill부터 살펴봅니다. 설명대로 어떤 Container를 채워주는 기능을 합니다. std::vector에 대해서 이 작업을 수행할 수도 있습니다. 하지만 벡터의 경우엔 자체적으로 초기화가 가능하며 Fill을 구태여 호출할 필요가 없습니다. 이 함수를 사용할 경우라면 벡터의 크기를 바꾸고 다시 채워넣을 필요가 있을 때 정도일 것입니다. 혹은 기존의 컨테이너 중간에 값을 삽입하거나 하는 기능에 활용할 수도 있습니다. 그런데 std::fill은 일관적인 값으로만 컨테이너를 채워줄 수 있습니다. 그게 아니라면 std::copy를 사용하는 편이 나을 것입니다. 만약 어떤 컨테이너의 특정 구간을 상승하는 값으로 채워주고 싶다면 std::iota를 사용할 수 있습니다. 아래의 실험적 코드를 보면 흥미로운 점이 있는..