为什么第一个得出的结论是 6,6 ,而第二个结果是6,7 我调试第一个的的时候把test函数完整的执行了两遍,因为每次都要初始化x=5,所以才会出现结果都是6调试第二个的时候先执行a = funX(),这时候就会得到一个返回值funY,由于没有加( ),所以funY这时候并不会执行,程序再往下,就是执行两次a(),这两次a()就是在执行funY(),每次都会叠加,所以得出的值6,7。 关于这两个解释,有什么问题吗? 还有一个不懂的就是上面就是标粗的地方,我觉得a( )执行的时候,就相当于funX( )( ),先执行funX(),然后再执行funY(),执行funX()的时候还是初始化x了又是等于5
添加回答
举报
0/150
提交
取消