2013-10-14 5 views
4

У меня есть несколько классов matlab. Как я могу объявить константы, которые видны во всех классах?
Например,: эти константы могут быть физическими константами, которые используются в методах всех классов. Первое, что приходит на ум, - использовать глобальные переменные. Есть ли лучший способ? Было бы неплохо объявить эти константы в отдельном файле.Глобальные переменные для библиотеки классов в matlab

+1

Считаете ли вы создание класса, содержащего все эти константы? Назовите его 'physicalConstants.m', затем обратитесь к' physicalConstants.myConstant' и т. Д. – Floris

+1

Вы имеете в виду создание более абстрактного класса только с этими переменными и использование наследования? – freude

+0

ах, хорошо, я понял. – freude

ответ

6

Класс, содержащий константы, - это хороший чистый способ сделать это. Смотрите статью в 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 

Вы можете найти более подробную информацию в ссылка приведена.

Смежные вопросы