0
好吧,所以即时尝试使用提供给我的模板文件,BTNode是该模板的一部分。无论如何,即时通讯尝试使用类型为btnode的队列来存储指向二叉搜索树的节点的指针,然后将queue.front()指针指向的数据传递给进程f。然后我将指针存储到该节点的子节点,并将父节点从队列中弹出。然后重复。至少这就是我试图做的事情。C++ BF使用指针队列搜索
即时通讯不知道如何去解决即时通讯的警告和错误,这些都与队列有关。 我是不是将指针插入队列?我该如何解决?
template <class Process, class BTNode>
void breadthfirst(Process f, BTNode* node_ptr)
{
std::queue<BTNode> map;
if(node_ptr != NULL)
map.push(node_ptr);
while(!map.empty()){
int a = map.front()*;
f(a);
if(map.front() -> right() != NULL)
map.push(map.front() -> right());
if(map.front() -> left() != NULL)
map.push(map.front() -> left());
map.pop();
}
}
。