我在路径上的myClass.m
包文件夹中有一个类文件。+myPack
类文件的一个简单示例是:
classdef myClass
properties
prop
end
methods
function obj = myClass(x)
obj.prop = x;
end
end
end
现在,如果我直接调用该方法并使用完整的包名访问该属性,即:
x = myPack.myClass(2).prop;
正确返回x = 2
。现在,如果我通过导入此类(而不是使用包名)来尝试相同的操作:
import myPack.myClass
y = myClass(2).prop
它给了我以下错误:
静态方法或构造函数调用不能被索引。不要在对静态方法或构造函数的调用之后加上任何额外的索引或点引用。
为什么这在第一种情况下有效,而在第二种情况下无效?据我了解,import
ing 一个类主要允许一个人使用类名而没有长包名(以及其他考虑因素)。导致此错误的这两者有什么区别,我该如何解决?