说我有以下代码:
% Cellmode_subfunction_test.m %% Cell 1 foo(1); %% Cell 2 foo(2); %% Definition of the foo subfunction function foo(num) disp(['num=' num2str(num)]);
如何测试最终定义的子功能的单元1和单元2?
编辑:基本上这个例子中的每个单元格执行一些冗长的计算,所以我想分别测试和调试它们.我正在使用子函数来抽象和重用常用功能,因为到目前为止,这个功能仅用于这个特定的应用程序,我真的不想将foo放在一个单独的m文件中.
编辑(2):我只记得我模糊地回忆单元模式只在matlab脚本中工作而不是在函数m文件中,并且在这样的脚本中不允许使用子函数和嵌套函数.因此,我所要求的可能是不可能的.
虽然下面给出的匿名函数解决方案可能有点限制,因为它只允许单个表达式函数,但实际上它确实足以满足我的想法,因此我已经接受它作为我的问题的解决方案.
更正:
我误解了你对CELL一词的使用.我很抱歉.您似乎只想在命令行定义一个函数而不将其保存到.m文件中.为此,您可以使用匿名函数:
foo = @(num) disp(['num=' num2str(num)]);
然后你可以像使用任何其他功能一样使用"foo".