Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Matlab中为整个范围声明变量_Matlab - Fatal编程技术网

在Matlab中为整个范围声明变量

在Matlab中为整个范围声明变量,matlab,Matlab,我一直在开发一个GUI,其中许多函数都使用该对象。 当前,此对象在gui中的每个子函数中声明为全局变量。 计时器也使用此对象,因此直接引用fun1(myobject)并不总是正常工作 function fun1 global myobject ... function fun2 global myobject ... 我想知道是否有一种更聪明的方法可以为GUI m文件的整个范围声明这个变量。 我试着在函数之外声明它,但它不起作用 myobject = 1 function fun1 ... f

我一直在开发一个GUI,其中许多函数都使用该对象。 当前,此对象在gui中的每个子函数中声明为全局变量。 计时器也使用此对象,因此直接引用
fun1(myobject)
并不总是正常工作

function fun1
global myobject
...
function fun2
global myobject
...
我想知道是否有一种更聪明的方法可以为GUI m文件的整个范围声明这个变量。 我试着在函数之外声明它,但它不起作用

myobject = 1
function fun1
...
function fun2
...

使用嵌套的子函数:

function myGui
a = 5;
f1();
f2();

    function f1 ()
        disp (a)
    end

    function f2 ()
        disp (a)
    end
end

使用嵌套的子函数:

function myGui
a = 5;
f1();
f2();

    function f1 ()
        disp (a)
    end

    function f2 ()
        disp (a)
    end
end