本周文件交换选择

我们最好的用户反馈

函数句柄构造函数

汪东城他本周的选择是function_handle构造函数通过Rody Oldenhuis

当我第一次开始用MATLAB编程时,我会在当前文件夹中创建我的MATLAB文件(脚本,函数)。一切都在那里,所以我没有问题调用我的脚本和函数。当我开始做多个项目时,我会创建一个新的工作文件夹,把所有东西都放在那里。过了一段时间,我就有了这些不断重用的类似函数。那时我才知道路径.我可以把我所有的实用程序函数放在一个特定的文件夹中,并将该文件夹添加到我的搜索路径中。后来,我学习了组织代码的其他方法,比如私有函数.当我学习面向对象编程时,我发现了

偶尔会遇到这样的情况,我需要调用某个位于其他文件夹中的函数,但该文件夹不在路径上。我只需要它用于那个特定的任务,我不想仅仅为那个任务将它添加到路径中。有一个方便的函数叫做运行,你可以拨打任何电话脚本其他地方也有,但对函数不适用。这就是function_handle由罗迪开始发挥作用。

例如,我在几年前写的一篇博客文章中突出显示了一个将数字转换为英文名称的条目。这个函数不在我的路径上,但我来演示一下它是如何工作的。首先,我要创建一个函数处理对于这个函数。通常,只需要使用@符号来创建函数句柄。但是对于一个不在路径上的函数,这就有点棘手了。这里,我用罗迪的function_handle

FCN = function_handle(“. . \ 2015 _01_09_num2words \ num2words \ num2words.m”
FCN = function_handle with value: @num2words

现在我可以打电话了num2words使用函数句柄。

fcn (1024)
Ans = '一千零二十四'

评论

试一试,让我们知道你的想法在这里或者留下评论Rody。




发布与MATLAB®R2018a

|
  • 打印
  • 发送电子邮件

评论

如欲留言,请点击在这里登录您的MathWorks帐户或创建一个新帐户。