如果对||予以正确恰当的重载,那么在 if 语句中,||或许是一个函数调用。如果 其是一个函数调用,那么“短路求值规则”会被抑住,这样 if 语句中的所有条件将总是被求值。
例如:
if(e.Title() == "CEO" || e.Salary() > 10000) cout << "hello" << endl;
如果对==、||和>进行适当重载,则两个表达式都将被求值。
文章来源:
http://my.donews.com/robinchow/2007/01/10/wtFbMixKLhXCHOcnoKJheNEPFczsPCQmVvoI/