问题背景:
MATLAB中的脚本文件M文件,必须需要函数名字和文件名同名,才可直接在命令窗口调用,那么是不是一个函数就要建立一个m文件呢?
解决办法
引入结构体,让m文件的函数返回结构体参数,然后结构体包含各个子函数的句柄
示例代码
%M文件返回结构体函数,包含2个函数句柄 (有点类似C语言中的结构体函数指针)
function funs = myfunctions
funs.fun1=@fun1;
funs.fun2 = @fun2;
end
%子函数1
function y=fun1(x)
y=x;
end
%子函数2
function z = fun2
z = 6*6;
end
命令窗口调用指令
>> funs = myfunctions;
>> funs.fun1(10)