add data to an existing object with a method not in @ directory

2 views (last 30 days)
I have created a class of objects, and have stored the core methods for working with these objects in a directory whose name starts with @.
Now I'd like to write another method to modify my object, but it's not core to the functioning of the class, so I don't want to put it in the @ directory because it's not general purpose enough.
If x is the name of the object, I would like to modify it in place by a call to
x.myFunction(arguments)
but the only way I know how to do this without putting myFunction into the @ directory would be to write the code as
x = myfunction(x, arguments)
but this would be bad for what I think are obvious reasons.
  3 Comments
Walter Roberson
Walter Roberson on 14 Feb 2019
modifications in place are restricted to classes derived from handle, which your class does not appear to be .
Adam
Adam on 14 Feb 2019
Either the function belongs on the class or it doesn't. If it does it needs to either be defined in the class file or in the @ directory (I never use the latter method, I always define all class functions in the class file itself, but I assume that is the case). If it doesn't then it can be anywhere but would just work with the class object and its public functions/properties like any other external function.

Sign in to comment.

Answers (0)

Categories

Find more on Construct and Work with Object Arrays in Help Center and File Exchange

Products


Release

R2018b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!