1 int num;//待定系数个数,一次拟合为3,二次拟合为6,三次拟合为10,四次拟合为15 2 if (NumberOfFitting == 1) 3 { 4 num = 3; 5 } 6 else if (NumberOfFitting == 2) 7 { 8 num = 6; 9 } 10 else if (NumberOfFitting == 3) 11 { 12 num = 10; 13 } 14 else if (NumberOfFitting == 4) 15 { 16 num = 15; 17 } 18 else 19 { 20 return; 21 }
为什么,这么定义num会出现警告?
不是你这段代码包的检测到无法访问的代码吧?你这段代码报的警告应该是已赋值但未使用的num吧?还有你直接return是不做任何处理直接返回了,如果这段带面后面还有别的语句的话,可能导致你下面的语句无法被访问到。
你改成 int num=0就好啦,
int 类型在没有赋值的情况下默认是0,可以不初始化。
是的。初始化一下num的值
num在return的时候也赋值一下。程序所有分支都走完的话,可能num还是没有值,所以警告。
需要 num 赋初始值