C++ Stack

栈中的元素遵守“先进后出”的原则(LIFO,Last In First Out),只能在栈顶进行插入和删除操作
C++ Stack_第1张图片

类型名称:stack或是stack
表明是由T类型的元素构成的栈。

头文件:

已定义类型:value_type、size_type

无迭代器

成员函数:
s.size():返回栈中的元素数量
s.empty():判断栈是否为空,返回true或false
s.push(元素):返回对栈顶部“元素”的可变(可修改)引用
s.pop():删除栈顶元素,类型为void,但并不返回被删除的元素
s1==s2:若成立,表明s1中的每个元素都等于s2的对应元素,返回true或是false

此外stack还有一个默认的构造函数、一个拷贝构造函数以及一个特殊的构造函数,还有一个析构函数。

通过一个例子来看一下stack模板类怎么使用:

    #include 
    #include 
    using namespace std;
    int main()
    {
        stack<char> cs;
        cout<<"Enter a line of text:\n";
        char next;
        cin.get(next);
        while(next!='\n'){
            cs.push(next);
            cin.get(next);
        }
        cout<<"cs's size is:"<while(!cs.empty()){
            cout<cout<return 0;
    }

输出如下:
这里写图片描述
通过输出我们可以很清楚的看到stack先进后出的特性。

你可能感兴趣的:(C++)