【问题标题】:Global variables for class library in matlabmatlab中类库的全局变量
【发布时间】:2013-10-22 01:39:42
【问题描述】:

我声明了几个matlab 类。我如何声明在所有类中都可以看到的常量?
例如:这些常量可以是物理常量,用于所有类的方法中。首先想到的是使用全局变量。有没有更好的办法?最好在单独的文件中声明这些常量。

【问题讨论】:

  • 您是否考虑过创建一个包含所有这些常量的类?称它为physicalConstants.m,然后参考physicalConstants.myConstant等。
  • 你的意思是只用这些变量创建更多的抽象类并使用继承?
  • 啊,好的,我明白了。
  • 如果你的类都是“现实世界的实例”,那么“现实世界的属性”可以是一个抽象超类。我正在考虑只是有一个结构(类),您可以在其中“存放”这些值。

标签: matlab oop scope matlab-class


【解决方案1】:

包含常量的类是一种很好的干净方法。请参阅 Matlab 文档中的文章:http://www.mathworks.com/help/matlab/matlab_oop/properties-with-constant-values.html

例如,如果您创建一个名为NamedConst 的类,如下所示:

classdef NamedConst
   properties (Constant)
      R = pi/180;
      D = 1/NamedConst.R;
      AccCode = '0145968740001110202NPQ';
      RN = rand(5);
   end
end

你可以参考值

radi = 45*NamedConst.R

您可以在给出的链接中找到更多详细信息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-05-06
    • 2014-12-13
    • 2013-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多