logo

C++ STL의 벡터::push_back() 및 벡터::pop_back()

벡터 요소가 삽입되거나 삭제될 때 자동으로 크기를 조정하는 기능이 있는 동적 배열과 동일하며 해당 저장소는 컨테이너에 의해 자동으로 처리됩니다.

watch Cartoononline.io 대안
벡터::push_back()

push_back() 함수는 요소를 뒤에서 벡터로 밀어넣는 데 사용됩니다. 새 값은 현재 마지막 요소와 컨테이너 크기가 1만큼 증가한 후 벡터의 끝에 삽입됩니다.



통사론:

  vectorname.push_back(value)  Parameters : The value to be added in the back is passed as the parameter Result : Adds the value mentioned as the parameter to the back of the vector named as vectorname>

예:

 Input: myvector = {1, 2, 3, 4, 5}; myvector.push_back(6); Output: 1, 2, 3, 4, 5, 6 Input: myvector = {5, 4, 3, 2, 1}; myvector.push_back(0); Output: 5, 4, 3, 2, 1, 0>

오류 및 예외
1. 강력한 예외 보장 - 예외가 발생하면 컨테이너에는 변경 사항이 없습니다.
2. 인수로 전달된 값이 벡터에서 지원되지 않는 경우 정의되지 않은 동작을 나타냅니다.



C++






// CPP program to illustrate> // push_back() function> #include> #include> using> namespace> std;> > int> main()> {> >vector<>int>>마이벡터{ 1, 2, 3, 4, 5 };> >myvector.push_back(6);> > >// Vector becomes 1, 2, 3, 4, 5, 6> > >for> (>auto> it = myvector.begin(); it != myvector.end(); ++it)> >cout <<>' '> << *it;> }>

>

>

산출

 1 2 3 4 5 6>
벡터::pop_back()()

pop_back() 함수는 벡터의 요소를 뒤에서 꺼내거나 제거하는 데 사용됩니다. 벡터의 끝에서부터 값이 제거되고, 컨테이너 크기가 1씩 감소합니다.

구문:

  vectorname.pop_back()  Parameters : No parameters are passed Result : Removes the value present at the end or back of the given vector named as vectorname>

예:

Input : myvector = {1, 2, 3, 4, 5}; myvector.pop_back(); Output :1, 2, 3, 4>
Input : myvector = {5, 4, 3, 2, 1}; myvector.pop_back(); Output :5, 4, 3, 2>

오류 및 예외

1. No-Throw-Guarantee – 컨테이너가 비어 있지 않으면 함수는 예외를 발생시키지 않습니다.
2. 벡터가 비어 있으면 정의되지 않은 동작을 나타냅니다.

C++




// CPP program to illustrate> // pop_back() function> #include> #include> using> namespace> std;> > int> main()> {> >vector<>int>>마이벡터{ 1, 2, 3, 4, 5 };> >myvector.pop_back();> > >// Vector becomes 1, 2, 3, 4> > >for> (>auto> it = myvector.begin(); it != myvector.end(); ++it)> >cout <<>' '> << *it;> }>

>

>

산출

 1 2 3 4>

pop_back()은 요소와 함께 값을 제거합니까?

pop_back() 함수가 호출되면 마지막 요소가 제거되고, 가치 그리고 강요 이 경우에는 같은 것 중 하나입니다. 저장된 객체의 소멸자가 호출되고 벡터의 길이가 1만큼 제거됩니다. 컨테이너의 용량이 줄어들지 않으면 이전 메모리 위치에 계속 액세스할 수 있지만 이 경우 이미 팝된 메모리 위치에 액세스할 수 없습니다. 요소는 결과적으로 정의되지 않은 동작 .

애플리케이션: push_back() 및 pop_back()

빈 벡터가 주어지면 push_back 함수를 사용하여 정수를 추가한 다음 크기를 계산합니다.

Input : 1, 2, 3, 4, 5, 6 Output : 6>

연산

1. push_back 함수를 사용하여 벡터에 요소를 추가합니다.
2. 벡터의 크기가 0인지 확인하고, 그렇지 않은 경우 0으로 초기화된 카운터 변수를 증가시키고 뒤쪽 요소를 팝합니다.
3. 벡터 크기가 0이 될 때까지 이 단계를 반복합니다.
4. 변수의 최종 값을 인쇄합니다.

C++




// CPP program to illustrate> // Application of push_back and pop_back function> #include> #include> using> namespace> std;> > int> main()> {> >int> count = 0;> >vector<>int>>마이벡터;> >myvector.push_back(1);> >myvector.push_back(2);> >myvector.push_back(3);> >myvector.push_back(4);> >myvector.push_back(5);> >myvector.push_back(6);> >while> (!myvector.empty()) {> >count++;> >myvector.pop_back();> >}> >cout << count;> >return> 0;> }>

>

>

산출

6>

다음과 같이 표 형식으로 차이점을 살펴보겠습니다.

벡터::push_back() 벡터::pop_back()
벡터의 끝에 새 요소를 추가하는 데 사용됩니다. 벡터의 끝에서 새 요소를 제거하는 데 사용됩니다.

구문은 -:

push_back(값);

구문은 -:

pop_back();

매개변수는 벡터의 끝에 추가하려는 값입니다. 매개변수를 사용하지 않습니다.
반환 유형이 없습니다. 반환 값이 없습니다.
그 복잡성은 일정합니다. 그 복잡성은 일정합니다.