Question

I have several matlab classes declared. How could I declare constants which are seen in all classes?
For instance: these constants can be physical constants which are used in methods of all classes. The first thing coming to mind is using global variables. Is there any better way? It will be nice to declare these constants in a separate file.

Était-ce utile?

La solution

A class containing the constants is a nice clean way to do this. See the article in Matlab documentation: http://www.mathworks.com/help/matlab/matlab_oop/properties-with-constant-values.html

For example, if you create a class called NamedConst as follows:

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

You can reference values with

radi = 45*NamedConst.R

You can find more details in the link given.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top