我发现了一些相关的问题,但并没有在那里找到答案。Matlab类方法:参数太多
我正在写一个简单的小MATLAB类,以便在MATLAB中学习OOP语法。我对Python非常熟悉,并且试图与MATLAB合作。这里的定义是:
classdef Car < handle
properties
speed = [0,0] %x,y velocity
position = [0,0]
running = false
end
methods
function obj = Car(pos, spd)
obj.position = pos;
obj.speed = spd;
end
function accelerate(obj,x,y) % Add to speed
obj.speed = obj.speed + [x,y]
end
function position = getPosition(obj)
position = obj.position
end
function start(obj)
obj.running = true
end
function stop(obj)
obj.running = false
end
end
end
这肯定是不这样做,但后来我用一个脚本来惹对象:
foo = Car([1,1],[0,2])
foo.start
foo.accelerate(2,3)
实例化的工作,但我所说的任何方法抛出一个错误。 foo.start,例如:
Error using Car/start
Too many input arguments.
我在想什么?
我要澄清,这始终是任何方法同“太多的输入参数”的错误我尝试调用一个对象。 – mrKelley 2013-05-08 17:26:02
什么版本的MATLAB?您的代码适用于R2011b。 – Praetorian 2013-05-08 17:28:01
有趣的是,R2013a – mrKelley 2013-05-08 17:33:46