21xrx.com
2025-07-12 03:23:38 Saturday
登录
文章检索 我的文章 写文章
C++中Stack的Top函数
2023-07-10 12:40:20 深夜i     28     0
C++ Stack Top函数

在C++语言中,栈(Stack)是一种数据结构,它是一种“后进先出”的数据结构,即最后进入栈的元素最先被取出。在C++标准模板库(STL)中,Stack类是一个容器适配器,它将其底层容器封装为栈,提供类似栈的行为,包括压入元素、弹出元素和查询栈顶元素等。

Stack类的Top()函数是Stack类的一个成员函数,用于返回栈顶元素的值,但不会将该元素从栈中弹出。Top()函数没有参数,并且返回类型为引用类型,因为它返回的是栈顶元素的地址。

以下是Top()函数的示例使用方法:

#include <iostream>
#include <stack>
using namespace std;
int main()
{
  stack<int> s;
  s.push(10);
  s.push(20);
  s.push(30);
  // 返回栈顶元素的地址,并打印该值
  cout << "Top element is: " << s.top() << endl;
  return 0;
}

在上面的示例中,我们首先创建了一个整型的Stack对象s,并通过push()函数依次向栈中压入3个元素10、20和30。然后,我们使用Top()函数获取栈顶元素的值,使用cout流将其输出到屏幕上。

需要注意的是,如果在空栈上调用Top()函数,程序将会出错。因此,在使用Top()函数之前,最好先检查栈是否为空。方法如下:

if (!s.empty()) {
  int top_value = s.top();
  // ...
}

在以上代码中,我们使用empty()函数判断栈是否为空,如果栈非空,则可以安全地调用Top()函数获取栈顶元素的值。

总之,Stack类的Top()函数是一个非常方便的函数,它可以让我们快速获取栈顶元素的值,而不用将该元素从栈中弹出。在使用该函数时,需要注意检查栈是否为空,以避免程序出错。

  
  

评论区

    相似文章