我在通过先前定义的常量为 Octave/Matlab 中的函数定义默认参数时遇到问题。有人可以给我一个提示,为什么在下面的代码中test1(1)
显示1
and 100
,而test2(1)
在error:
testarg' undefined near line 1 column 36` 失败?太感谢了!
testarg = 100
function test1 (arg1=testarg, arg2=100)
disp(arg1)
disp(arg2)
endfunction
function test2 (arg1=testarg, arg2=testarg)
disp(arg1)
disp(arg2)
endfunction
test1(1)
test2(2)
编辑:
请注意,论点的顺序很重要:
function test3 (arg1=100, arg2=testarg)
disp(arg1)
disp(arg2)
endfunction
octave:8> test1(1)
1
100
octave:9>test3(1)
error: `testarg' undefined near line 1 column 32