紧急求救:关于C++ builder中的栈的问题

youziying 2003-12-26 11:09:53
程序中生成了一棵树,树的结点为结构体形式,定义如下:
struct Node
{
int Attribute;
int Class;
struct Node * FirChild;
struct Node * Sibling;
};
想将指向此树结点的指针放入栈中。
请问:如何定义此栈,使得栈中的元素存储的是指向该结构体的指针。还有,如果还应用到队列,此队列又该如何定义。为什么我在编程的时候,怎不能使其存储指针,只能存储结点? (直接应用c++ builder的STL中的栈和队列)
...全文
26 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
nbb 2004-01-07
  • 打赏
  • 举报
回复
不是:
std::Stack<Node *> mystack
std::Queue<Node *> myQueue

是:
std::stack<Node *> mystack
std::queue<Node *> myQueue

STL中的所有容器类型名称都没有大写
victor_cui 2003-12-26
  • 打赏
  • 举报
回复
std::Stack<Node *> mystack
std::Queue<Node *> myQueue

ok
youziying 2003-12-26
  • 打赏
  • 举报
回复
此程序中的.h文件以包含下述
#include <queue>
#include <stack>
using namespace std;
但是如上定义
std::Queue<Node *> NodeQueue;
std::Stack<Node *> NodeStack;

后,运行报错为
[C++ Error] AmbiguityDT.h(1357): E2316 'Stack' is not a member of 'std'
[C++ Error] AmbiguityDT.h(1357): E2108 Improper use of typedef 'Node'
[C++ Error] AmbiguityDT.h(1357): E2188 Expression syntax
[C++ Error] AmbiguityDT.h(1444): E2451 Undefined symbol 'NodeQueue'
[C++ Error] AmbiguityDT.h(1443): E2268 Call to undefined function 'push_back'

24,854

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧