Pab*_*era 2 matlab matlab-class
从MATLAB帮助中考虑这个例子.
这个例子除了有语法问题外,并不适用于我.我不知道是否是版本问题,我正在使用R2013a.
classdef MyClass
properties (Constant = true)
X = pi/180;
end
properties
PropA = sin(X*MyClass.getAngle([1 0],[0 1]);
end
methods (Static = true)
function r = getAngle(vx,vy)
end
end
end
Run Code Online (Sandbox Code Playgroud)
它说
未定义的函数或变量'X'.MyClass中的错误(第1行)classdef MyClass
我可以通过添加来修复它MyClass.X,但我不知道这是否是目的.
MathWorks的例子都搞砸了.意图可能是这样写的:
classdef MyClass
properties (Constant = true)
Deg2Rad = pi/180;
end
properties
PropA = sin(MyClass.Deg2Rad*MyClass.getAngle([1 0],[0 1]));
end
methods (Static = true)
function r = getAngle(vx,vy)
r = atan2(vy,vx)/MyClass.Deg2Rad;
end
end
end
Run Code Online (Sandbox Code Playgroud)
我想重点是演示一个静态方法和常量属性:
>> MyClass.getAngle(1,sqrt(3))
ans =
60.0000
>> MyClass.getAngle(sqrt(3),1)
ans =
30.0000
>> MyClass.getAngle(0,1)
ans =
90
Run Code Online (Sandbox Code Playgroud)