本周文件交换精选

我们最好的用户提交

函数处理构造函数

汪东城本周的选择是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 = ' 1024 '

评论

试试吧,让我们知道你的想法在这里或者离开评论Rody。




发布与MATLAB®R2018a

|
  • 打印
  • 发送电子邮件

评论

要留下评论,请点击在这里登录到您的MathWorks帐户或创建一个新帐户。