C++ Stack size() 函数使用方法及示例

C++ STL Stack(栈)

C ++ Stack size()函数返回堆栈元素的数量。堆栈元素的数量是指堆栈的大小。堆栈元素的大小是非常重要的信息,因为基于它我们可以推断出许多其他内容,例如所需的空间等。

语法

size_type size() const

参数

没有参数传递给函数;它只是给出了参考堆栈的大小。由于该函数用于了解堆栈大小,因此程序中没有自变量的目的。

返回值

返回堆栈中元素的数量,它是堆栈大小的度量。因此,该函数具有整数返回类型,因为size是一个int值。

实例1

//一个简单的C ++来演示在堆栈容器中使用size()函数。

#include <iostream>
#include <stack>
using namespace std;
int main()
{
	stack<int> newstack;
	cout << "0. size: "<< newstack.size();
	for(int j=0; j<5; j++)
	newstack.push(j);
	cout<<"\n";
	cout<<"1. size: " << newstack.size();
	newstack.pop();
	cout<<"\n";
	cout<<"2. size: "<< newstack.size();
	return 0;
}

输出:

0. size: 0
1. size: 5
2. size: 4

实例2

//一个简单的C ++来演示在堆栈容器中使用size()函数。

#include <iostream>
#include <stack>
using namespace std;
int main()
{
	stack<int> newstack;
	newstack.push(23);
	newstack.push(46);
	newstack.push(69);
	cout << newstack.size();
	return 0;
}

输出:

3

实例3

//一个简单的C ++来演示在堆栈容器中使用size()函数。

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

int main()
{
	stack<int> a,b;
	a.push(5); a.push(8); a.push(50);
	b.push(132); b.push(45);
	cout<<"a的大小: "<<a.size();
	cout<<"\n b的大小:" <<b.size();
	return 0;
}

输出:

a的大小: 3
b的大小: 2

复杂

该函数的复杂度是恒定的,该函数仅返回堆栈的大小,该大小由元素数来衡量。

数据争用

该函数访问容器。通过此函数访问整个堆栈容器,以获取堆栈大小的值。由于大小是通过堆栈中存在的元素的总数来度量的,因此整个容器至少被访问一次。

异常安全

提供了与在底层容器对象上执行的操作相同的保证。

C++ STL Stack(栈)