Я экспериментирую с ООП в MATLAB, и у меня есть следующий конструктор:
function obj = Squadron(num_fighters, num_targets, time_steps) if nargin == 0 num_targets = 100; time_steps = 100; num_fighters = 10; end obj.num_shooters = num_fighters; for iShooter = 1:obj.num_shooters a(iShooter) = Shooter(num_targets, time_steps); end obj.ShooterArray = a; obj.current_detections = zeros(num_fighters, num_targets); end
Эта временная переменная 'a' ужасно пахнет. Есть ли лучший способ инициализировать массив объектов, я бы хотел, чтобы был метод push / pop. Я уверен, что есть способ сделать это лучше.