localfunctions将函数句柄返回到 m 文件中的所有本地函数。但是,这在包中不起作用。例如,以下保存为“am”的代码运行良好:
function fs = a()
fs = localfunctions;
end
function babo()
end
function hidden()
end
从 MATLAB 控制台调用:
>> a()
ans =
@babo
@hidden
但是当它作为'+aaa/bm'在一个包中时,我什么也得不到:
>> aaa.b()
ans =
{}
我不认为这种行为有据可查。我该如何克服呢?我需要使用localfunctions
对包中的某些功能进行单元测试,并且我不想仅仅因为这个而将其保留在包之外。