Possible Duplicate:
How to modify properties of a Matlab Object
I'm trying to convert my C# code into Matlab, in Matlab I decided to use OOP, which I haven't been used with Matlab, to be able to handle with the complexity of my C# code.
Looking the tutorial, I come up with the following code:
classdef Cat
    properties
        meowCount = 0; 
    end
    methods 
        function Meow(C)
            disp('meowww'); 
            C.meowCount = C.meowCount + 1;
        end
    end    
end
The result:
>> c = Cat();
>> c.Meow();
meowww
>> c
c = 
  Cat
  Properties:
     meowCount: 0
  Methods
So, meowCount does not change. What is the problem?
A few problems I noticed:
handle base classThe constructor is not strictly necessary, but very useful to get to know for when you really want to start developing larger classes. It is used to initialize the obj object, which gets passed around to each and every method. It is quite similar to Python's self, or C++'s this. 
So, your corrected class:
classdef Cat < handle
    properties
        meowCount = 0; 
    end
    methods 
        function obj = Cat()
            % all initializations, calls to base class, etc. here,
        end
        function Meow(obj)
            disp('meowww'); 
            obj.meowCount = obj.meowCount + 1;
        end
    end    
end
Demonstration:
>> C = Cat;
>> C.Meow; 
meowww
>> C.meowCount
1
                        If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With