I auf einem Simulink-Modell bin arbeiten, die auf verschiedenenModi konfiguriert ist, dass die Modellparameter zu ändern, basierend auf dem Material wie die gewählten Abtastrate Filtergruppenverzögerung, etc ...Converting Klasseneigenschaften auf struct Sichtbarkeit bezüglich
I obwohl alle Parameter auf eine ParameterStruct
setzen, laden Sie dann die richtige Parameter-Struktur für jeden Modus.
Diese Art der Zuordnung zu einer Klasse mit abhängigen Eigenschaften ist gut, da es viele Modellparameter gibt, die nur aus ein paar Eingaben generiert werden.
Aber wenn ich versuche, ein struct
aus der einer class
Sichtbarkeit zu erzeugen, nicht eingehalten wird:
classdef SquareArea
properties
Width
Height
end
properties (Access =private)
Hidden
end
properties (Dependent)
Area
end
methods
function a = get.Area(obj)
a = obj.Width * obj.Height;
end
end
end
>> x=SquareArea x = SquareArea with properties: Width: [] Height: [] Area: [] >> struct(x) Warning: Calling STRUCT on an object prevents the object from hiding its implementation details and should thus be avoided. Use DISP or DISPLAY to see the visible public details of an object. See 'help struct' for more information. ans = Width: [] Height: [] Hidden: [] Area: []
Dies ist nicht akzeptabel, weil ich die Struktur zu C danach exportieren muß , um den Modus dynamisch aus dem generierten Code zu setzen.