gpt4 book ai didi

matlab - 如何初始化类句柄的向量?

转载 作者:太空宇宙 更新时间:2023-11-03 20:19:32 25 4
gpt4 key购买 nike

我有一个基于句柄的类,我需要为其创建一个向量。一个简单的方法是在 for 循环中动态构造向量,但这会导致 mlint 提示向量大小发生变化。

classdef HandleClass < handle
...
end

...

for i = 1:10
foo(i) = HandleClass();
end

我怀疑使用此方法分配大型复杂对象数组所需的资源命中率。

A comment in a previous thread描述了使用 repmat 函数创建向量的有用方法。然而,@gnovice 警告说,这样做会创建一个指向同一对象的句柄向量。我已经对此进行了测试,似乎是这样。

是否有一种技巧可以在不使用 for 循环的情况下预分配唯一句柄对象的向量?


解决方案总结

solutionSCFrench 呈现正确分配内存以创建对象向量。其他解决方案将创建向量,但不会分配内存。

foo(10) = HandleClass();

最佳答案

似乎您可以通过调用 empty 来完成此操作存在于所有非抽象类中的方法。

foo = HandleClass.empty(10,0);
for i = 1:10
foo(i) = HandleClass();
end

关于matlab - 如何初始化类句柄的向量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7879726/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com