#performance #matlab #for-loop #multidimensional-array #coding-efficiency
Вопрос:
есть ли лучший способ присвоить значения очень сложному объекту с несколькими вложенными классами и свойствами? Прямо сейчас у меня есть следующий фрагмент кода в четырехкратном цикле, но это серьезное узкое место в моем коде. Есть ли лучший способ справиться с чем-то подобным?
for ind_1 = 1:N1
for ind_2 = 1:N2
for ind_3 = 1:N3
for ind_4 = 1:N4
if any(myLogicalVector)
obj.prop(ind_1).interaction(ind_2,ind_3,ind_4).interaction_flag = someFixedValue1;
else
obj.prop(ind_1).interaction(ind_2,ind_3,ind_4).interaction_flag = someFixedValue2;
end
end
end
end
end
Комментарии:
1. Пожалуйста , укажите свое определение
obj
того, что мы не можем сказать вам, как назначать вещи тому, чего мы не знаем. Кроме того,interaction(x,y,z)
быть структурой (или, что еще хуже, классом) было бы очень неэффективно для больших размеров. Возможно, вам захочется переосмыслить свою структуру данных.