У меня есть класс на основе дескриптора, который мне нужен для создания вектора. Простой способ сделать это - динамически построить вектор в цикле for, но это заставляет mlint жаловаться на изменение размера вектора.
classdef HandleClass < handle
...
end
...
for i = 1:10
foo(i) = HandleClass();
end
Я с подозрением отношусь к попаданию ресурса, необходимому для использования этого метода для выделения больших массивов сложных объектов.
Комментарий в предыдущей теме описывает полезный метод создания вектора с использованием функции repmat . Тем не менее, @gnovice предупредил, что при этом будет создан вектор маркеров, указывающих на один и тот же объект. Я проверил это, и, похоже, это так.
Есть ли хитрость, позволяющая предварительно выделять вектор объектов уникальных дескрипторов без использования для цикла?
Краткое изложение решения
Решение , представленное SCFrench , правильно выделяет память для создания вектора объектов. Другие решения будут создавать вектор, но не будут выделять память.
foo(10) = HandleClass();