我有一个基于句柄的类,我需要创建它的向量。执行此操作的一个简单方法是在 for 循环中动态构造向量,但这会导致mlint抱怨向量大小的变化。
classdef HandleClass < handle
...
end
...
for i = 1:10
foo(i) = HandleClass();
end
我怀疑使用此方法分配大型复杂对象数组所需的资源占用。
A 在上一个线程中发表评论描述了一种使用创建向量的有用方法repmat功能。然而,@gnovice 警告说,这样做会创建一个指向同一对象的句柄向量。我已经对此进行了测试,情况似乎如此。
是否有一个技巧可以允许预先分配唯一句柄对象的向量而不使用for loop?
Solution Summary
The solution提出者SCFrench正确分配内存以创建对象向量。其他解决方案将创建向量,但不会分配内存。
foo(10) = HandleClass();
似乎您可以通过致电来做到这一点empty所有非抽象类中都存在的方法。
foo = HandleClass.empty(10,0);
for i = 1:10
foo(i) = HandleClass();
end
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)