本文整理汇总了C++中MoveList::pop方法的典型用法代码示例。如果您正苦于以下问题:C++ MoveList::pop方法的具体用法?C++ MoveList::pop怎么用?C++ MoveList::pop使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MoveList
的用法示例。
在下文中一共展示了MoveList::pop方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
void
EcoTable::Node::print(Board& board, Variations& variations, MoveList& moves, unsigned ply)
{
if (flags)
return;
Variation* var = 0;
flags = 1;
if (length == ply)
{
//M_ASSERT(variations.find(eco) == variations.end());
var = variations[eco] = new Variation;
var->moves = moves;
}
for (unsigned i = 0; i < numBranches; ++i)
{
Branch const& b = branches[i];
Move move = board.makeMove(b.move);
board.prepareForPrint(move);
board.prepareUndo(move);
board.doMove(move);
moves.push(move);
if (length == ply)
{
var->branches.append(move);
var->codes.push_back(b.node->eco);
var->transpositions.push_back(b.transposition);
}
if (!b.transposition)
b.node->print(board, variations, moves, ply + 1);
moves.pop();
board.undoMove(move);
}
}