Computer >> 컴퓨터 >  >> 프로그래밍 >> C++

C++ STL forward_list::cbegin() 함수 사용법과 예제 총정리

이 글에서는 C++에서 forward_list::cbegin() 함수가 어떻게 동작하는지 자세히 알아보겠습니다.

forward_list란?

forward_list는 일반적인 list와 달리 다음 요소와의 연결(linkage)만 유지합니다. 일반 리스트는 앞뒤 요소 모두와 연결되어 있어 양방향 순회가 가능하지만, forward_list는 오직 앞쪽(forward) 방향으로만 순회할 수 있습니다.

forward_list::cbegin() 함수는 C++ 표준 템플릿 라이브러리(STL)의 일부로, 리스트의 첫 번째 요소를 가리키는 상수 반복자(constant iterator)를 반환하는 데 사용됩니다.

이 함수를 호출하려면 <forward_list> 헤더 파일을 포함해야 합니다.

문법(Syntax)

Forward_List_Name.cbegin();

매개변수(Parameters)

이 함수는 어떠한 매개변수도 받지 않습니다.

반환 값(Return Value)

이 함수는 forward_list의 첫 번째 요소를 가리키는 상수 반복자(constant iterator)를 반환합니다. 상수 반복자이므로 해당 요소의 값을 수정할 수 없다는 점에 유의하세요.

예제

입력: 11, 4, 99
출력: 11

설명 −

여기서는 요소 11, 4, 99를 가진 forward list를 생성했습니다. 그다음 cbegin() 함수를 호출하여 리스트의 첫 번째 요소를 가리키게 했습니다.

따라서 이 값을 출력하면 리스트의 첫 번째 요소인 11이 출력됩니다.

프로그램의 접근 방식

  • 먼저 int 타입의 forward_list(예: "Lt")를 생성하고 값을 할당합니다.
  • 리스트를 출력하기 위해 for 루프를 시작합니다.
  • for 루프 내부에 cbegin()cend() 함수의 반환 값을 받을 auto 타입의 객체 "itr"를 생성하고, cbegin() 함수를 사용하여 리스트의 첫 번째 요소로 "itr"를 초기화합니다.
  • cend() 함수를 사용하여 "itr"가 리스트의 마지막 요소와 같지 않은 조건을 for 루프의 종료 조건으로 지정합니다.
  • *itr을 출력합니다.

알고리즘

시작
Step 1-> main() 함수에서
    forward_list<int> Lt={} 초기화
    auto itr = Lt.cbegin(), itr != Lt.cend(), itr++ 조건으로 루프 실행
    *itr 출력
    종료
정지

전체 코드 예제

#include<iostream>
#include<list>
using namespace std;
int main() {
    forward_list<int> Lt = { 67,88,99,10 };
    // 리스트의 요소 출력
    cout <<"The elements of the list are : " << "\n";
    for (auto itr = Lt.cbegin(); itr != Lt.cend(); itr++)
    cout << *itr << " ";
    return 0;
}

출력 결과

위 코드를 실행하면 다음과 같은 출력이 생성됩니다 −

67 88 99 10

마무리

cbegin() 함수는 리스트의 데이터를 읽기만 하고 수정하지 않아야 하는 경우에 유용합니다. 상수 반복자를 반환하기 때문에 실수로 컨테이너의 요소를 변경하는 것을 컴파일 단계에서 방지할 수 있어, 코드의 안전성을 높이는 데 도움이 됩니다.