在另一个 Octave 函数文件中使用变量
Using variables from one Octave function file in another
假设我在同一加载路径中有两个 Octave 函数文件:file1.m 和 file2.m。
文件 1:
function [variable] = file1()
variable = 1;
endfunction
文件 2:
function file2()
variable2 = variable*2;
endfunction
如何才能在 file2 中使用 variable
?
我试过很多东西,比如:
1.
function [variable] = file1()
global variable = 1;
endfunction
function file2()
global variable;
variable2 = variable*2;
endfunction
2.
在 file2.m
中的 file2() 之前或之内调用 file1()
file1();
function file2()
global variable;
variable2 = variable*2;
endfunction
3.
调用file2()时使用变量作为参数
function file2(variable)
variable2 = variable*2;
endfunction
没有成功。任何帮助将不胜感激!
最简单的解决方案是在 file2
中调用 file1
:
function file2()
variable = file1();
variable2 = variable*2; % do you want to return variable2 as the output of file2?
endfunction
编辑
如果你的函数returns不止一个变量,过程完全一样,即:
function [x,y,z] = file1()
x = 1;
y = 2;
z = 3;
endfunction
function file2()
[x,y,z] = file1();
variable2 = 2*(x+y+z); % do you want to return variable2 as the output of file2?
endfunction
假设我在同一加载路径中有两个 Octave 函数文件:file1.m 和 file2.m。
文件 1:
function [variable] = file1()
variable = 1;
endfunction
文件 2:
function file2()
variable2 = variable*2;
endfunction
如何才能在 file2 中使用 variable
?
我试过很多东西,比如:
1.
function [variable] = file1()
global variable = 1;
endfunction
function file2()
global variable;
variable2 = variable*2;
endfunction
2.
在 file2.m
中的 file2() 之前或之内调用 file1()file1();
function file2()
global variable;
variable2 = variable*2;
endfunction
3.
调用file2()时使用变量作为参数
function file2(variable)
variable2 = variable*2;
endfunction
没有成功。任何帮助将不胜感激!
最简单的解决方案是在 file2
中调用 file1
:
function file2()
variable = file1();
variable2 = variable*2; % do you want to return variable2 as the output of file2?
endfunction
编辑
如果你的函数returns不止一个变量,过程完全一样,即:
function [x,y,z] = file1()
x = 1;
y = 2;
z = 3;
endfunction
function file2()
[x,y,z] = file1();
variable2 = 2*(x+y+z); % do you want to return variable2 as the output of file2?
endfunction