add data to an existing object with a method not in @ directory
2 次查看(过去 30 天)
显示 更早的评论
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 个评论
Walter Roberson
2019-2-14
modifications in place are restricted to classes derived from handle, which your class does not appear to be .
Adam
2019-2-14
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.
回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 File Operations 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!