问题标签 [matlab-class]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3574 浏览

matlab - 为什么在传入正确的参数时会出现“输入参数过多”错误?

为什么我会收到错误消息:

???使用 ==> ensureCellType 时出错 输入参数过多。

==>usage_dynamicVariableNaming 中的错误 11 结果 = dataHolder.ensureCellType(str);

当我传入正确数量的参数时?


感谢您的大力帮助。它现在运行,但没有插入数据。

我在这个新问题上开了一个新线程: 数据没有成功插入到对象中

0 投票
1 回答
191 浏览

matlab - matlab 2012b 的类是否向后兼容?

我刚刚发现 Matlab 已经实现了类,但是我找不到任何关于这个功能存在多长时间的信息。有谁知道由定义的类classdef是否向后兼容旧版本的matlab?

如果有,回溯多远?

0 投票
1 回答
217 浏览

matlab - 枚举中缺少值或空字符串

有没有办法有这样的枚举:

缺少值或 NaN 值?谢谢。

0 投票
1 回答
86 浏览

matlab - Matlab中如何改变实例的属性

我是 MATLAB 新手,我想编写一个更改该对象属性的类的方法:

原来属性还是6。

0 投票
2 回答
225 浏览

matlab - 寻找对 MATLAB 的 methods() 函数的未记录使用的洞察力

我已经看过了,但没有看到[a b] = methods(classname)记录。我的意思是,记录了单变量输出,但没有记录双变量输出。我在 MATLAB 或未记录的 matlab 中,甚至在. 也许我错过了?

char例如,如果我用 matlab 类调用它

然后a是 char 的方法列表,并且b[]

但...

对于 java 类,b具有一些有用的值。假设这javaClass是一个 java 类或 java 类名。

通常,我会打电话a = method(javaClass)或打电话a = method(javaClass,'-full')。但是,我注意到我也可以打电话

[a b] = method(javaClass)

当我做:

  • a是一个包含所有类方法名称的唯一列表的单元格。(如预期)
  • b是一个 N x 6 的字符串单元格,每列代表:
    1. 'static'如果是静态的,[]否则
    2. 完全合格的返回类
    3. 方法名称
    4. 完全限定方法名
    5. 输入参数(在括号中),或者只是()
    6. '抛出fully.qualified.exception.name ',或[]

例子:

然后,a是一个包含简单名称的 <32x1 单元格>,例如'Integer','bitCount'等。

但是,b是一个 <43x6 单元格>,包含每个函数的每个变体。例如,valueOf 函数之一将显示

所以,这是我的问题:

主要问题:这完全不安全使用吗?因为它是无证的,所以我假设是这样;但是它为我提供了一些无需复制的内置功能。解析的解决方法并不令人讨厌,但是这个功能已经在这里了。

这是从哪里来的?也就是说,这实际上是来自 MATLAB 函数,还是它正在使用一些 Java 函数?

有人用吗?或者(如主要问题)应该避免它吗?

有这方面的文件吗?除了这篇文章,我的意思是。我的意思是,当然,它似乎是一个直截了当的功能......这对任何人来说都足够有趣吗?

我在 MATLAB 2011b 上,此功能是否仍然存在于更高版本的 MATLAB(2013a)中?

0 投票
1 回答
1093 浏览

matlab - 在另一个类 MATLAB 中创建一个类的对象数组

我正在尝试Cell在另一个类 System in MATLAB. The classCell 中创建一个类的对象数组`是:

现在我有另一堂课System。我尝试制作这样的Cell对象数组:

但我认为我使用了错误的格式。不确定这是否可能。任何有关如何实现此目的的建议将不胜感激。

0 投票
3 回答
617 浏览

java - 在matlab classdef中导入java类

我有一个使用 classdef 定义的 matlab 类。

我正在为一些 java 东西创建一个包装器,并且需要导入几个类。

我不知道在哪里导入这些类,到目前为止我可以根据需要在每种方法中导入它们......这很痛苦。

有任何想法吗?

0 投票
1 回答
700 浏览

matlab - 在 MATLAB 中模拟 C++ 模板

我试图找出创建替代 C++ 模板或 Java 通用对象的最佳方法。由于几个不同的原因,我过去曾多次想这样做,但是现在我想做的是为几个相关类创建 saveobj 和 loadobj 函数。我的想法是我想要一组通用的例程来创建一个默认结构,然后再进一步操作它以按照我想要的方式获得结构。

我不能简单地使用外部函数,因为我需要访问对象的所有公共(不是问题)和受保护(问题)非瞬态属性才能创建 loadobj 和 saveobj。

然后我考虑使用抽象接口。然而,使用抽象接口给我带来了同样的问题。相同,复制粘贴在我所有目标文件中的代码。因此,我想到了使用某种与多重继承相结合的成熟对象(我的大多数对象已经从接口的基本具体化继承)。我认为使用超类可以让我公开子类受保护的属性,但它似乎不是那样工作的。有什么建议么?

这是保存 obj 方法的多重继承方法(我目前最接近的方法)的示例。

序列化器.m

TestSerializerA.m

TestSerializerB.m

0 投票
1 回答
984 浏览

arrays - 索引对象点符号方法给出标量属性

在使用点符号应用方法后尝试引用对象属性时,我看到了一个问题。它仅在我尝试索引初始对象时发生

然后分配以下

当调用整个数组并收集属性数据时,它工作正常

如果我尝试索引 A 那么我只会得到一个标量

即使没有属性调用它似乎做得很好

有任何想法吗?

0 投票
1 回答
2209 浏览

matlab - 调用超类构造函数

我阅读了有关如何从子类调用超类构造函数的文档页面。他们提到的语法是这样的:

我想知道@上述语法中符号的目的是什么。符号只是语法中@无意义的占位符,还是@表示 MATLAB 中的函数句柄符号

如果我使用:

代替

它仍然可以正常工作。那么使用@符号的目的是什么?