iota: 증가하는 값으로 C++ 컨테이너 초기화

1546 단어 computersciencecpp
C++에서 값이 증가하는 컨테이너(예: 벡터)를 초기화하려는 경우 for 루프를 사용하여 다음과 같은 값을 삽입하는 경향이 있습니다.

vector<int> array;
for(int i = 0; i < 10; i++) {
    array.push_back(i);
}
// array = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]


같은 것을 달성하기 위해 우리는 C++ 알고리즘 라이브러리에 정의된 함수를 사용할 수 있습니다. 세부 사항으로 들어가기 전에 먼저 동작을 살펴보겠습니다.

vector<int> array(10);
iota(array.begin(), array.begin() + 10, 0);
// array = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]


정수에서 시작하는 순차 값으로 컨테이너를 초기화하는 것이 얼마나 쉬운지 보십시오. 이제 이 기능에 대해 자세히 알아보겠습니다.

사용



iota 기능을 사용하려면 필요한 헤더 파일을 포함하십시오. bits/stdc++.h를 포함하거나 .cpp 파일 상단에 알고리즘과 숫자를 포함할 수 있습니다.

허용되는 기능 매개변수


  • 컨테이너의 시작 주소
  • 컨테이너가 순차 값으로 채워져야 하는 최대 주소
  • 할당할 초기 값(이후 자동 증가 및 할당됨)

  • Note: This function doesn't return anything.



    염두에 두어야 할 사항


  • 이 함수를 사용하기 전에 배열을 일정 크기로 초기화해야 합니다.
  • 두 번째 매개변수(값이 채워지는 마지막 주소)는 컨테이너의 끝 주소를 초과해서는 안 됩니다.
  • 전체 컨테이너
  • 를 채우기 위한 두 번째 매개변수로 array.end()를 사용할 수 있습니다.
  • 정수 변수나 상수를 전달할 수 있습니다(위 스니펫에서 수행한 대로).

  • 전체 참조를 보려면 here을 방문하십시오.

    잘못된 점을 발견하거나 C++와 관련된 더 흥미로운 기능이나 기타 사항을 알고 있는 경우 아래에 댓글을 남겨 함께 학습할 수 있습니다.

    내 프로필 -

    Github

    좋은 웹페이지 즐겨찾기