Why do we need to use dynamic properties?
8 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Why do we need to use dynamic properties? In what situations must we use dynamic properties? What value do they bring? If I must add a property, why not add it within the class instead of adding a dynamic property to the object?
The book I'm reading provides examples of dynamic properties, but I find that they seem to function like regular variables. Furthermore, it seems like this program can achieve its goals without dynamic properties. Please take a look at the code below.
classdef MyButton < dynamicprops
properties
UiHandle
end
methods
function obj = MyButton(pos)
if nargin > 0
if length(pos) == 4
obj.UiHandle = uicontrol('Position',pos,...
'Style','pushbutton');
else
error('Improper position')
end
end
end
end
end
The book instructs to execute the following commands.
hbutton1 = MyButton ([20 40 100 40]);
addprop(hbutton1,'Caption');
hbutton1.Caption='OK';
set(hbutton1.UiHandle,'String',hbutton1.Caption)
However, I found that removing dynamic properties does not affect the outcome.
hbutton1 = MyButton ([20 40 100 40]);
hbutton1.UiHandle.String='OK'
9 comentarios
Respuestas (1)
Matt J
el 6 de Sept. de 2023
Use dynamic properties to attach temporary data to objects or to assign data that you want to associate with an instance of a class, but not all objects of that class.
4 comentarios
Matt J
el 6 de Sept. de 2023
Well, like I said, it's just so that you can attach data to an object without cluttering the classdef with additional properties that you're only going to use for one application. I don't think there's any more to it than that.
Ver también
Categorías
Más información sobre Software Development Tools en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!