是否可以在 m 文件中使用函数,该函数在同一文件的后面部分中实现:以与其他编程语言(例如 C)类似的风格?
当然。
在这样的 m 文件中,局部函数将在主函数之后声明。例如:
function y = main_func(x)
% # This is the main function
y = helper_func1(x) .* helper_func2(x); % # Just an example
function h1 = helper_func1(x)
% # This is a helper function #1
h1 = x + 2; % # Just an example
function h2 = helper_func2(x)
% # This is a helper function #2
h2 = x * 2; % # Just an example
在这个例子中main_func
可以调用helper_func1
and helper_func2
没有任何问题。您可以测试运行它并亲自查看:
>> main_func(8)
ans =
160
不需要任何前向声明。
顺便说一下,MATLAB 自带的很多 m 文件都是这样实现的。例如,corrcoef. With type corrcoef
,你可以看到。
注意:提示符或脚本中不允许本地函数定义,因此您必须在 m 文件中声明“main”函数。作为练习,将我的示例复制粘贴到新的 m 文件中,删除以下声明main_func
(仅第一行)看看会发生什么。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)