Veröffentlicht 14. April 200916 j Grüße, ein Vorteil von VB.Net ist, dass man Properties mit Parametern aufrufen kann, z.B.: Public Property Mx(ByVal unit As MeasurementUnit(Of PointMoment)) As Double Get Return _Mx(unit) End Get Set(ByVal value As Double) If _Mx(unit) <> value Then _Mx(unit) = value OnPropertyChanged("Mx") End If End Set End Property Was genau hinter den Variablen steckt, ist egal, nur ein Beispiel... Daher frag ich mich, ob sowas auch mit C# gehen würde. Ich hab schon rausgefunden, dass es mit der Default-Property geht: public interface IGeometryHeigth : IGeometry { double this[string unit] {set;} } jetzt ist nur die Frage, wenn ich eine Instanz hab, kann ich in dieser Klasse auch andere Properties (keine überladene default-Property) deklarieren, die auch Parameter verwendet? public interface IGeometryHeigth : IGeometry { double this[string unit] {set;} double Value1[string unit] { set; } } ... mag mein Compiler irgendwie nicht: Bad array declarator: To declare a managed array the rank specifier precedes the variable's identifier. To declare a fixed size buffer field, use the fixed keyword before the field type. Array size cannot be specified in a variable declaration (try initializing with a 'new' expression) Invalid expression term 'string' Invalid token ']' in class, struct, or interface member declaration Invalid token ';' in class, struct, or interface member declaration Type or namespace definition, or end-of-file expected Bin dankbar für Vor- oder Abschläge. :hells:
15. April 200916 j Hallo TDM, in C# ist es - mit Ausnahme des Default-Properties - nicht möglich, Properties mit Parametern aufzurufen. Über eine kleine Hintertür lässt es sich dennoch erreichen (kann man von halten, was man will...): http://stackoverflow.com/questions/236530/using-the-typical-get-set-properties-in-c-with-parameters/236860#236860 Bearbeitet 15. April 200916 j von el programador
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.