Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

trying to create objects in a for loop

Asked by jeff wu on 31 Mar 2012

hi, i get an error but i dont understand why this isnt working

liste = [node(1,2)]%;subdiv(xkoord);
for i=2:4
  liste(i+1) = node(1,2)%;subdiv(xkoord);
end
classdef node
  properties 
      x;
      y;
      bearing=0;
  end % properties
  methods
      function obj = node(x,y)
          obj.x=x;
          obj.y=y;
        end%functions
    end%methods
end %class

??? Input argument "x" is undefined.

Error in ==> node>node.node at 9 obj.x=x;

at the second call in the for it crashes

thanks for help

0 Comments

jeff wu

Products

No products are associated with this question.

1 Answer

Answer by Jim Hokanson on 31 Mar 2012

Matlab is trying to construct space for the object before you actually construct the object. In other words, Matlab is calling your constructor without any input arguments. If you add the following to your constructor call and you should be fine

if nargin == 0
return
end

0 Comments

Jim Hokanson

Contact us