有没有办法在您可以从命令窗口调用的MATLAB文件的部分内定义函数?我想在一个.m
文件中定义三个函数(每个函数都在它自己的部分中),但我看不出我将如何调用它们。
答案 0 :(得分:0)
你可以做一件事。创建文件夹myFuncitions并在文件夹名称前添加加号,如“+ myFunctions”,并将所有函数.m文件移动到该文件夹中。您可以访问函数:myFunction.Func1(),muFunctions.Func2()等等......
答案 1 :(得分:0)
使用课程是最好的选择。在课堂上,您可以定义多个方法(即函数),并独立于它们的顺序调用它们。
例如:
classdef Cat < handle
properties
meowCount = 0;
end
methods
function obj = Cat()
% all initializations, calls to base class, etc. here,
end
function Meow1(obj)
disp('meowww');
obj.meowCount = obj.meowCount + 1;
end
function Meow2(obj)
disp('meowww meowww');
obj.meowCount = obj.meowCount + 2;
end
end
end
示范:
>> C = Cat;
>> C.Meow1;
meowww
>> C.meowCount
1
>> C.Meow2
meowww meowww
>> C.meowCount
3
答案 2 :(得分:0)
Is it possible to define more than one function per file in MATLAB, and access them from outside that file?给出了一个很好的答案。实现它的示例代码是
function fHandle=temp(fnum)
switch fnum
case 1, fHandle=@func1;
case 2, fHandle=@func2;
case 3, fHandle=@func3;
end
end
function y=func1(x)
y=x+1;
end
function y=func2(x)
y=x+2;
end
function y=func3(x)
y=x+3;
end
从命令行输入
F1 =温度(1); F2 =温度(2); F3 =温度(3);
然后 [f1(1)f2(1)f3(1)]
给出
ans = 2 3 4