//在方法中,如果我们把返回代码写在一个while的bool循环中,我们会发现会提示没有返回值
如:static int GetMax( num1,num2)
{
bool b=true; //提示该方法没有返回值
while(b)
{
if (num1>num2)
{
return num1;
}
else
{
return num2;
}
}
}
这个方法提示没有返回值,说明并没有进入while循环。开始我以为是bool类型的初始值为false而b==true不成立的原因,于是我就改成:
如:static int GetMax( num1,num2)
{
bool b=false; //提示该方法没有返回值
while(b==false)
{
if (num1>num2)
{
return num1;
}
else
{
return num2;
}
}
}
发现代码如上所示还是没有返回值,说明并不是bool值为true还是false的关系,而是此时定义的bool变量并不存在,并没有在内存中存储。
但我们会想,当代码一行一行往下执行时,执行到while(b==false)时条件判断已经成立啊,为什么还是进不去循环,这里通过推测可以知道这是
vs的一个问题,vs在我们编写代码时不停地在检查语法,但并没有将方法中的变量实现,导值进不去循环。如果是这样我们就可以写一段欺骗性的
代码让vs知道该方法有返回值:
</pre><pre>
如:static int GetMax( num1,num2)
{
bool b=false; //提示该方法没有返回值
int max;
while(b==false)
{
if (num1>num2)
{
return max=num1;
}
else
{
return max=num2;
}
}
return max;
}