文件交换选择的一周

我们最好的用户提交

函数句柄构造函数

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

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

有时候,我需要调用另一个文件夹中的函数,但那个文件夹不在路径上。我只需要它来完成那个特定的任务,我不想把它添加到那个任务的路径中。有一个方便的函数叫做运行,它允许您调用任何脚本这在其他地方也存在,但它不适用于函数。这就是function_handle罗迪开始发挥作用。

例如,我几年前写过一篇博客文章,其中我突出显示了一个将数字转换为英文名称的条目。这个函数不在我的路径上,但是让我告诉你它是如何工作的。首先,我创建一个函数处理对于这个函数。通常,您只需使用@符号来创建函数句柄。但是对于不在路径上的函数,就有点棘手了。这里,我用Rody的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发布

|
  • 打印
  • 发送电子邮件

评论

要发表评论,请点击此处2017-07-29 13:313:00