21xrx.com
2025-07-08 01:50:45 Tuesday
文章检索 我的文章 写文章
C++栈代码
2023-07-03 17:34:20 深夜i     8     0
C++ 代码 数据结构 编程

C++是一种高效的编程语言,用于开发各种应用程序和软件项目。其中,栈是一种非常基本和重要的数据结构,常用于数据存储和处理过程中。

下面我们来看一下C++中的栈代码实现。首先,我们需要定义一个栈类,其中包含栈顶指针和数组等成员变量,以及入栈、出栈等操作方法。下面是一个简单的栈类定义:

class Stack {
private:
  int top; // 栈顶指针
  int maxSize; // 栈的最大容量
  int* data; // 栈的数据内容
public:
  Stack(int size); // 构造函数
  ~Stack(); // 析构函数
  bool isFull(); // 判断栈是否已满
  bool isEmpty(); // 判断栈是否为空
  int pop(); // 出栈操作
  bool push(int val); // 入栈操作
};

上面的代码中,我们定义了一个Stack类,并声明了一些必要的成员变量和方法,包括构造函数、析构函数、判断栈是否为空或已满、入栈、出栈等操作。接下来,我们就需要在类的实现文件中实现这些方法。

Stack::Stack(int size) {
  maxSize = size;
  data = new int[maxSize];
  top = -1;
}
Stack::~Stack() {
  delete[] data;
}
bool Stack::isFull() {
  return top == maxSize - 1;
}
bool Stack::isEmpty() {
  return top == -1;
}
int Stack::pop() {
  if (isEmpty()) {
    // 抛出异常
    return -1;
  }
  int val = data[top];
  top--;
  return val;
}
bool Stack::push(int val) {
  if (isFull()) {
    // 抛出异常
    return false;
  }
  top++;
  data[top] = val;
  return true;
}

在上面的代码中,我们实现了Stack类的构造函数、析构函数、判断栈是否为空或已满、入栈和出栈等操作。在出栈和入栈操作中,我们首先判断栈是否已满或为空,如果是,则抛出异常或返回false,否则,执行相应的操作,返回结果。

以上就是C++中栈的代码实现。栈是一个非常基础的数据结构,在程序设计中应用非常广泛。熟练掌握栈的概念和操作,对于提高程序开发的效率和质量非常有帮助。

  
  

评论区