C++ 基礎(chǔ)教程

C++ 流程控制

C++ 函數(shù)

C++ 數(shù)組 & 字符串

C++ 數(shù)據(jù)結(jié)構(gòu)

C++ 類 & 對象

C++ 指針

C++ 繼承

C++ STL 教程

C++ 參考手冊

C++ Stack pop() 函數(shù)使用方法及示例

C++ STL Stack(棧)

C ++堆棧pop()函數(shù)用于刪除堆棧的最高元素。此函數(shù)執(zhí)行刪除操作。堆棧中的刪除是從頂部開始的。首先刪除最近插入的元素。堆棧遵循LIFO原則,即后進先出,因此彈出操作遵循上述順序。

語法

void pop()

參數(shù)

該函數(shù)不帶參數(shù),僅用于刪除頂部元素。同樣,由于堆棧遵循LIFO原則,因此我們不需要指定要刪除的元素,因為默認情況下,最頂部的元素將被首先刪除。

返回值

該函數(shù)僅用于從堆棧中刪除元素,并且沒有返回值。因此,我們可以說該函數(shù)的返回類型為void。

實例1

//該程序用于通過插入簡單的整數(shù)值來演示堆棧的pop()函數(shù)的用法。

#include <iostream>
#include <stack>
using namespace std;

int main()
{
	stack<int> newstack; 
	for(int j=0; j<5; j++)
	newstack.push(j);
	cout <<"彈出元素?";
	while (!newstack.empty () )
	{
		cout <<" " << newstack.top();
		newstack.pop();
	}
	cout<<"\n";
	return 0;
}

輸出:

彈出元素... 4 3 2 1 0

實例2

//該程序用于通過插入簡單的整數(shù)值來演示堆棧的pop()函數(shù)的用法。

#include <iostream>
#include <stack>
using namespace std;

int main()
{
	stack<int> newstack; 
	newstack.push(11);
	newstack.push(22);
	newstack.push(33);
	newstack.push(44);
	cout << "彈出元素?";
	newstack.pop();
	newstack.pop();
	while (!newstack.empty () )
	{
		cout << " "<< newstack.top();
		newstack.pop();
	}
	cout<<"\n";
	return 0;
}

輸出:

彈出元素... 22 11

實例3

//該程序用于通過插入簡單的整數(shù)值來演示堆棧的pop()函數(shù)的用法。

#include <iostream>
#include <stack>
using namespace std;

int main()
{
	stack<int> newstack;
	newstack.push(69);
	newstack.push(79);
	newstack.push(80);
	newstack.push(85);
	newstack.push(90);
	while (!newstack.empty () )
	{
		cout<< " " << newstack.top ();
		newstack.pop();
	}
	return 0;
}

輸出:

90 85 80 79 69

復(fù)雜

該函數(shù)的復(fù)雜度是恒定的,該函數(shù)僅在堆棧的頂部執(zhí)行彈出或刪除操作,而不會增加任何復(fù)雜性。

數(shù)據(jù)爭用

對容器和其中包含的元素進行了修改。通過刪除操作,將變化反映在頂部位置的元素上,頂部位置向下移動一個單位。可以證明為top = top--。

異常安全

提供與在底層容器對象上執(zhí)行的操作等效的保證。

C++ STL Stack(棧)

丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清