octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Another request for classdef test in Matlab


From: Ben Abbott
Subject: Re: Another request for classdef test in Matlab
Date: Fri, 04 Jan 2013 17:57:06 -0500

On Jan 4, 2013, at 5:44 PM, Michael Goffioul wrote:

> On Fri, Jan 4, 2013 at 5:41 PM, Ben Abbott <address@hidden> wrote:
> 
> On Jan 4, 2013, at 5:26 PM, Michael Goffioul wrote:
> 
> > Can anyone test the following in Matlab.
> >
> > Have a class defined in ClassA.m as:
> >
> > classdef ClassA < handle
> >   properties
> >     x = 1;
> >   end
> >   methods
> >     function obj = ClassA (x)
> >       obj.x = x;
> >     end
> > end
> 
> I had a few minutes to get back to this today.  Looks like I'm helping with 
> the easy parts ;-)
> 
> You missed an "end"
> 
> classdef ClassA < handle
>   properties
>     x = 1;
>   end
>   methods
>     function obj = ClassA (x)
>       obj.x = x;
>     end
>   end
> end
> 
> 
> > At the prompt, execute:
> >
> > a(2,2) = ClassA (2)
> 
> a(2,2) = ClassA (2)
> Error using ClassA (line 7)
> Not enough input arguments.
> 
> Of course, use this instead:
> 
> classdef ClassA < handle
>   properties
>     x = 1;
>   end
>   methods
>     function obj = ClassA (x)
>       if nargin > 0
>         obj.x = x;
>       end
>     end
>   end
> end
> 
> Michael.

Ok. That behaves like a structure, and returns a cs-list.

clear all
a(2,2) = ClassA (2)

a = 

  2x2 ClassA handle

  Properties:
    x

  Methods, Events, Superclasses

a.x

ans =

     1


ans =

     1


ans =

     1


ans =

     2

Ben





reply via email to

[Prev in Thread] Current Thread [Next in Thread]