【发布时间】:2012-01-14 11:10:24
【问题描述】:
我希望一个类的所有成员函数都可以访问同一个堆栈。每个成员函数都会将数据压入堆栈并从堆栈中弹出数据。
我很难声明堆栈。我有一个 cpp 文件和一个头文件,它不允许我在头文件中声明一个堆栈。有没有人可以举例说明如何做到这一点?
我需要使用堆栈作为 LIFO 数据结构更有意义,因为我只需要访问放置在堆栈上的最后一项。
我尝试在头文件中使用stack<int> items; 将其声明为受保护成员,但出现编译错误“堆栈未命名类型”。
亚当
【问题讨论】:
-
这个堆栈对象是你班级的(私有)成员吗?
-
任何有关您如何尝试执行此操作以及编译器抱怨的示例代码都会很有帮助。
-
@kol 不,它现在根本不是会员。我尝试将其声明为头文件中的受保护成员: stack
items;但它不起作用,它给出了编译错误“堆栈不是类型” -
您是否在标题开头添加了
#include <stack>?
标签: c++ class stack member-functions