我已经在这段代码上停留了一段时间,并且不断遇到分段错误。我在编码方面还很新,所以我几乎不知道这意味着什么。有谁知道如何解决这一问题?
while(!deadEnds.empty()) {
headptr = &deadEnds.top();
cout << headptr->getStrPos();
fin = 0;
while(!fin) {
headptr->setWall();
for(int i = 0; i < 4; i++) {
if(getNumberOfWalls(headptr->getDirectionNode(directions::nesw(i))) == 3) {
headptr = headptr->getDirectionNode(directions::nesw(i));
break;
}
else {
fin = 1;
break;
}
}
}
deadEnds.pop();
}
当我尝试对其进行编译时,VS代码跳至所提供代码的突出显示部分,因此认为这可能也很有用。
MazeNode *MazeNode::getDirectionNode(const directions::nesw &direction)
{
return nesw_nodes_[direction];
}
非常感谢!