function [intrade_all,intrade_info ] = buyaction(series,pretrade,parameter,intrade_all)在for循环中,定义这样一个函数,intrade_all变量即使函数的参数,也是函数的返回值,请问这样是否合法,因为在循环中本次函数返回的结果,要作为下次函数执行的条件
2 回答
墨色风雨
TA贡献1853条经验 获得超6个赞
合法
但是定义的时候最好不要写成一样,以免自己看混乱了
在buyaction.m文件里面这样定义
function [intrade_all_out,intrade_info ] = buyaction(series,pretrade,parameter,intrade_all_in)
函数里面就根据的需要,把intrade_all_in经过运算的结果赋值给intrade_all_out
在主函数里面写成一样的
intrade_all=初始值;
for 循环条件
[intrade_all,intrade_info ] = buyaction(series,pretrade,parameter,intrade_all);
end
红颜莎娜
TA贡献1842条经验 获得超12个赞
在matlab中,函数的参数和返回值使用同一个参数是合法的。
如果对于自变量在函数中运行后数值有所改变,而且后续的程序中需要用到改变后的数值,那么可以将自变量当做因变量返回。
举例说明如下:
function [x, y] = fun(x) x = x + 1; // 将点的横坐标向左平移一个单位,并返回平移后的横坐标值 y = x^2; // 求平移后横坐标所对应的纵坐标,并返回 |
添加回答
举报
0/150
提交
取消