一个非常有经验的程序员写了这样的东西:
#include <string>
using namespace std;
class Fraction
{
float nominator;
float denominator;
void load()
{
cin>>nominator; cin>>denominator;
if(denominator==0)
{
while(denominator==0)
{
cout<<"denominator can not be equal 0!"<<endl;
cin>>denominator;
}
}
}
};
我不知道为什么会有一个if语句。真的有必要吗?
最佳答案
在此特定示例中,
while(denominator==0)
{
cout<<"denominator can not be equal 0!"<<endl;
cin>>denominator;
}
完全相同。
在您提供的上下文中,没有任何东西可以告诉我们为什么有人将循环嵌套在无用的
if
中,但是有人可以提出解释。在该代码的早期版本中,if
块中可能存在某些更改程序/功能行为的代码。这也可能是一个无辜的错误。
Stroustrup的猫可能已经在键盘上走路。