Обновление одного поля в каждом элементе массива структуры Matlab
Предположим, у меня есть массив структурarr
где каждый элемент имеет несколько полей, включая одноval
, Я хотел бы увеличить каждый элементval
поле на некоторое постоянное количество, например, так:
for i = 1:length(arr)
arr(i).val = arr(i).val + 3;
end
Это, очевидно, работает, но я чувствую, что должен быть способ сделать это всего за одну строку кода (и не для цикла). Лучшее, что я придумаю, это две строки и требует переменную temp:
newVals = num2cell([arr.val] + 3);
[arr.val] = deal(newVals{:});
Есть идеи? Благодарю.