2013-12-11 158 views
-1

我的问题可能是非常基本的,虽然在Internet上还找不到任何答案。我在Matlab中创建了一个面向对象的程序。运行模型时,我希望有时间作为全局变量,可以被所有对象访问。在Matlab中如何将变量声明为Global。据用Matlab给出的建议应该简单地声明如下:在Matlab中声明全局变量

global time 

然而,这提供了以下错误信息:

parse error at global: usage might be invalid matlab syntax. 

怎样做正确的方式?

+1

这是一行代码断章取义。它在哪里?在每个类的构造函数里面? – horchler

回答

4

我只能猜测,你添加了global关键字到一个它不应该在C++风格的地方。以下是非法 Matlab的语法:

classdef MyClass 
     global time; 
end 

在MATLAB中global关键字里面只放功能:

classdef MyClass 
    methods 
     function foo(this) 
      global time; 
     end 

     function bar(this) 
      global time; 
     end 
    end 
end 
+1

如果函数foo创建'global'变量名''time'并且在函数栏中,只是重做'全球时间';并且您将可以访问相同的变量数据。全局可以是任何东西:object,array,int,handle,... – Vuwox