- Define the methods in your value class to return the modified object, and call the methods with the object as both input and output.
- Change your class to a handle class.
Changing variable (properties in class) by method
292 views (last 30 days)
Show older comments
classdef ClassName
properties
PropertyName
end
methods
function [obj ] = ClassName()
obj.PropertyName = 0;
end
function [ ] = MethodName(obj,arg1,...)
obj.PropertyName=obj.PropertyName+5;
end
function [ ] = MethodName2(obj,arg1,...)
obj.PropertyName=obj.PropertyName/2;
end
end
end
The question is how i can modify code to modify variable in properties by method.
0 Comments
Accepted Answer
Steven Lord
on 20 Nov 2018
Your class is a value class as opposed to a handle class. See this documentation page for a description of the differences between the two. The "Modifying Value Objects in Functions" and "Modifying Handle Objects in Functions" sections on that documentation page describe what happens when you modify properties of an instance of each kind of class in a function or method. So you can either:
0 Comments
More Answers (0)
See Also
Categories
Find more on Class File Organization in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!