gpt4 book ai didi

matlab - 在 Matlab 中设置向量的初始类型

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

我想声明一个接受用户定义类型插入的空向量。在以下示例中,node 是我用 classdef node ...

定义的类型

以下代码被 Matlab 解释器拒绝,因为空向量被自动初始化为 double 类型,所以它不能插入 node

>> a = [];
>> a(1) = node(1,1,1);
The following error occurred converting from node to double:
Conversion to double from node is not possible.

下面的代码被接受是因为向量是用一个 node 初始化的,所以它稍后可以插入节点。

>> a = [node(1,1,1)];
>> a(1) = node(1,2,1);

但是,我想创建一个可以在其中插入节点的 向量。我可以像这样笨拙地做:

>> a = [node(1,1,1)];
>> a(1) = [];

什么是更好的方法?我正在寻找将空向量的初始类型声明为 node 的内容。如果我可以弥补语法,它看起来像:

>> a = node[];

但这不是有效的 Matlab 语法。有什么好的方法吗?

最佳答案

可以通过以下方式创建空对象

A = MyClass.empty;

它适用于您的自己的类,也适用于Matlab 的类,例如

A = int16.empty;

此方法可以用此语法创建多维空对象

A = MyClass.empty(n,m,0,p,q);

只要一维设置为零即可。

查看 doc .

关于matlab - 在 Matlab 中设置向量的初始类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34333607/

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