在一个文件中清除多个MATLAB函数

在一个文件中清除多个MATLAB函数,matlab,Matlab,我在matlab中有很多小函数,是否可以将它们全部放在一个文件中,这样我的工作就会更清晰 我试着写一个小脚本,然后添加函数,但没有成功 知道怎么做吗?一个文件中不可能有多个函数,因为函数是通过文件名访问的。这就是为什么函数必须与文件名具有相同的名称 如果只访问另一个函数中的“小”函数,则可以将小函数放在另一个函数的文件中,但它们只能访问这一个函数。这在MATLAB中称为局部函数。例如,您有一个文件test.m,其中包含: function x=test(y,z) x = add(y,z)

我在matlab中有很多小函数,是否可以将它们全部放在一个文件中,这样我的工作就会更清晰

我试着写一个小脚本,然后添加函数,但没有成功

知道怎么做吗?

一个文件中不可能有多个函数,因为函数是通过文件名访问的。这就是为什么函数必须与文件名具有相同的名称

如果只访问另一个函数中的“小”函数,则可以将小函数放在另一个函数的文件中,但它们只能访问这一个函数。这在MATLAB中称为局部函数。例如,您有一个文件
test.m
,其中包含:

function x=test(y,z)
    x = add(y,z)
end

function a=add(b,c)
    a = b + c;
end
然后,您只能在
test
内部使用
add
,但您可以像往常一样使用
test

我通常会把函数放在子文件夹中。这有助于保持路径整洁,没有任何限制。这也允许您更好地封装软件。您唯一需要做的就是使用将文件夹添加到您的路径中

addpath('subfolder');

如果有函数文件,则可以在该文件中添加其他函数

如果有脚本,则无法向其添加函数

请注意,如果将函数放入文件中,则无法直接从“主”函数范围之外访问函数


一般来说,我建议您使用文件夹或适当的文件名来组织您的功能,而不是将其中的许多功能堆叠在一个文件中

额外的


如果您的函数非常小,那么您可以编写一个带有匿名函数声明的脚本,以便于重用。然而,这可能不是你想要的。

你能分享一下你的剧本吗?很遗憾,我不明白他们为什么那样做,但好吧