이 기사에서는 C++에서 list::end() 함수의 작동, 구문 및 예제에 대해 논의할 것입니다.
STL의 목록이란 무엇입니까?
목록은 순서대로 어디에서나 일정한 시간 삽입 및 삭제를 허용하는 데이터 구조입니다. 목록은 이중 연결 목록으로 구현됩니다. 목록은 비연속적인 메모리 할당을 허용합니다. 목록은 배열, 벡터 및 데크보다 컨테이너의 모든 위치에서 요소의 삽입 추출 및 이동을 더 잘 수행합니다. 목록에서 요소에 대한 직접 액세스는 느리고 목록은 forward_list와 비슷하지만 순방향 목록 개체는 단일 연결 목록이며 앞으로만 반복될 수 있습니다.
목록::end()란 무엇입니까?
list::end()는 헤더 파일에 선언된 C++ STL의 내장 함수입니다. end()는 목록 컨테이너의 끝 위치 옆에 있는 요소를 참조하는 반복자를 반환합니다. 이 함수는 컨테이너의 어떤 요소도 가리키지 않습니다.
이 함수는 주로 특정 목록 컨테이너의 범위를 지정하기 위해 list::begin()과 함께 사용됩니다.
구문
list_container.end();
이 함수는 매개변수를 허용하지 않습니다.
반환 값
이 함수는 과거를 목록 컨테이너의 끝 요소로 반환합니다.
예시
/*아래 코드에서는 주어진 함수를 사용하여 목록에 있는 요소를 탐색하기 위해 end() 함수를 사용하고 있습니다.*/
#include <bits/stdc++.h>
using namespace std;
int main(){
//create a list
list<int> myList;
//insert elements to List suing push_back() function
myList.push_back(67);
myList.push_back(12);
myList.push_back(32);
myList.push_back(780);
myList.push_back(78);
cout<<"elements in the list are :\n";
for (auto j = myList.begin(); j!= myList.end(); j++){
cout << *j << " ";
}
return 0;
} 예시
위의 코드를 실행하면 다음 출력이 생성됩니다.
Elements in the list are: 67 12 32 780 78
예시
/* 아래 코드에서 헤더 파일을 사용하여 end() 함수를 사용하여 목록에 있는 요소에 액세스합니다. */
#include <iostream>
#include <list>
int main (){
//creating array of elements
int values[] = {67, 12, 32, 780, 78};
//inserting values to the list
std::list<int> myList (values,values+5);
std::cout << "elements in the list are :\n";
//accessing list elements using iterator returned by an end() function
for (std::list<int>::iterator i = myList.begin() ; i != myList.end(); ++i)
std::cout << ' ' << *i;
return 0;
} 출력
위의 코드를 실행하면 다음 출력이 생성됩니다.
Elements in the list are: 67 12 32 780 78