Matlab使用batch命令调用自定义函数无法传入参数如何解决
问题原因
你调用batch时传入自定义函数的格式错误,未使用函数句柄:
- 调用内置函数
zeros时你使用了@zeros的函数句柄格式,符合batch的参数要求,可以正常提交任务 - 调用自定义
runTest时你直接写了runTest,这会触发Matlab在当前工作区直接执行无参数的runTest(),还未进入batch的参数传递逻辑就触发了输入参数不足的报错
解决方案
将batch的第一个入参改为@runTest的函数句柄格式即可,修改后代码如下:
j = batch(@runTest,1,{5,1});
修改后正常调用fetchOutputs(j)即可获取返回结果。
内容的提问来源于stack exchange,提问作者Scott
相关产品推荐
相关产品推荐

