替代函数中的continue函数(matlab)

时间:2018-03-10 07:18:30

标签: matlab for-loop continue

我们不能在matlab中的函数中使用continue函数。例如,不允许以下内容:

for ii = 1:5  
    function1(ii)  
end  

function function1(in)  
   if ii, continue; else, disp('hi'); end  
end

我应该使用另一种结构吗?我应该总是把for循环放在函数中吗?是否有理由不在函数内部进行循环?

@Peng Chen回答了我的大部分答案。然而,我想补充一点,针对MATLAB特定问题的简单解决方案是使用' return'而不是继续'在子功能中。

1 个答案:

答案 0 :(得分:2)

  1. 是。例如:

    DoCmd.OpenForm

    让function1处理ii。使用function1的返回值来处理for循环。

  2. 没有
  3. 当您需要在for循环中使用A(函数外部的变量1,可能是全局变量)时,您应该将A传递给function1。传递参数或特定声明是麻烦的。
  4. 当调用function1时,MATLAB退出主程序并进入function1。所以"继续"不能跳过for循环。顺便说一句,在function1中没有ii,只有in。
  5. 抱歉我的英语不好。