stack::size (STL Samples)
在 Visual C++ 演示如何使用 堆栈:: 范围 标准 (STL)模板库函数。
template<class _TYPE, class _C, class _A>
size_type stack::size( ) const;
备注
备注
类/参数名在原型不匹配版本在头文件。修改某些提高可读性。
stack::size 函数返回元素的堆栈上的。 可以调用带有空的堆栈的此功能;将返回值 0。
示例
// StackSize.cpp
// compile with: /EHsc
// Illustrates how to use the size function to determine
// the number of elements on the stack.
//
// Functions:
//
// size : returns the number of elements in the stack.
//////////////////////////////////////////////////////////////////////
#pragma warning(disable:4786)
#include <stack>
#include <string>
#include <iostream>
using namespace std ;
typedef stack<string> STACK_STRING;
int main()
{
STACK_STRING stack1;
// Check the size of an empty stack. Should return 0.
cout << "stack1.size() equals " << stack1.size() << endl;
// Add item "Hello" to Stack1.
cout << "stack1.push('Hello')" << endl;
stack1.push("Hello");
// Add item "This is the second element" to Stack1.
cout << "stack1.push('This is the second element')" << endl;
stack1.push("This is the second element");
// Check the size of Stack1. Should return 2.
cout << "stack1.size() equals " << stack1.size() << endl << endl;
// Add item "Third element" to Stack1.
cout << "stack1.push('Third element')" << endl;
stack1.push("Third element");
// Check the size of Stack1. Should return 3.
cout << "stack1.size() equals " << stack1.size() << endl << endl;
// Pop "Third element".
cout << "stack1.pop()" << endl;
stack1.pop();
// Pop "This is the second element".
cout << "stack1.pop()" << endl;
stack1.pop();
// Check the size of Stack1 again. Should return 1.
cout << "stack1.size() equals " << stack1.size() << endl << endl;
// Pop "Hello".
cout << "stack1.pop()" << endl;
stack1.pop();
// Check the size of Stack1. Should return 0.
cout << "stack1.size() equals " << stack1.size() << endl;
}
Output
stack1.size() equals 0
stack1.push('Hello')
stack1.push('This is the second element')
stack1.size() equals 2
stack1.push('Third element')
stack1.size() equals 3
stack1.pop()
stack1.pop()
stack1.size() equals 1
stack1.pop()
stack1.size() equals 0
要求
**标题:**stack