我的计划的一部分(我可以添加更多的细节,如果有必要)有这样一行:||的逻辑错误运营商?
if((e->start->explored = false) || (e->end->explored = false)){
//do action...
}
这是一个图形算法,其中e是事件顶点“开始”和“结束有向边的一部分“。如果至少有一个e的事件顶点未被探索,我希望'行为'发生,但是这个逻辑似乎是错误的。尽管我使用了一个小例子,并且证实了我的边的开始和结束顶点确实是未开始探索的,但是我的整体函数正在进入无限循环。
于是我测试它像这样:
if((e->start->explored = false) || (e->end->explored = false)){
//do action...
}
else cout << "FAIL";
...,当然,它印的屏幕 “FAIL”。我的逻辑错误是什么?
哦!我确定!哎呀。 – nicole