我正在阅读McConell的Code Complete,他讨论了使用布尔变量来记录您的代码。例如,代替:
if((elementIndex < 0) || (MAX_ELEMENTS < elementIndex) ||
(elementIndex == lastElementIndex)){
...
}
他建议:
finished = ((elementIndex < 0) || (MAX_ELEMENTS < elementIndex));
repeatedEntry = (elementIndex == lastElementIndex);
if(finished || repeatedEntry){
...
}
这让我印象深刻,因为这是合乎逻辑的,良好的做法,并且非常有据可查。但是,由于我几乎从未遇到过这种方法,因此我不愿意定期开始使用这种技术。也许仅仅因为它是稀有的就令人困惑。但是,我的经验还不是很丰富,所以我很想听听程序员对此技术的看法,并且我很想知道是否有人定期使用此技术或在阅读代码时是否经常看到它。这是值得采用的惯例/风格/技术吗?其他程序员会理解和欣赏它,还是认为它很奇怪?