【发布时间】:2009-09-30 21:17:05
【问题描述】:
假设我找到了符合条件的节点,我需要停止搜索。
【问题讨论】:
标签: boost-graph breadth-first-search visitors
假设我找到了符合条件的节点,我需要停止搜索。
【问题讨论】:
标签: boost-graph breadth-first-search visitors
解决方案是抛出已知类型的异常 - 然后在调用方捕获它。来自FAQ:
如何从 BFS 等算法中提前退出?
创建一个在您想要中断搜索时引发异常的访问者,然后将您对 breadth_first_search 的调用放在适当的 try/catch 块内。这让许多程序员认为是对异常的滥用,然而,很多人都考虑过让异常具有提前退出的首选方式的决定。有关详细信息,请参阅提升电子邮件讨论。
【讨论】: