Entwickler-Ecke
C# - Die Sprache - Vorbelegung von übergabeparametern c#
schwandi - So 20.02.11 16:44
Titel: Vorbelegung von übergabeparametern c#
Hallo :-)
Ich würde gerne in C# die Übergabeparameter einer Methode oder ähnliches, vorbelegen lassen, sprich wenn man sie nicht angibt soll einfach der vordefinierte wert verwendet werden.
In C++ funktioniert das ja so:
C#-Quelltext
1: 2: 3: 4: 5:
| void xysetzen(int xx=0, int yy=0) { x=xx; y=yy; } |
Wenn man es genau gleich in C# probiert kommt folgenden Fehlermeldung:
"Standardparameterbezeichner sind unzulässig"
Gibt es irgendeine Möglichkeit das in C# zu realisieren?
lg schwandi
Kha - So 20.02.11 17:16
Du solltest mal auf C# 4 updaten - oder wenigstens die Version in deinen Postings hinterlegen ;) .
In früheren Versionen konnten optionale Parameter nur durch Überladung simuliert werden.
schwandi - So 20.02.11 23:34
ok, sry dachte nicht das es damit zusammenhängt :/
Habe 3.5 :/
Kann man das den updaten oder muss ich komplett neu instalieren?
lg
Kha - Mo 21.02.11 01:01
Wenn du Visual Studio benutzt, brauchst du VS2010 - warum auch immer man überhaupt bei einer älteren Version bleibt, wenn man nicht dazu gezwungen ist :nixweiss: .
schwandi - Mo 21.02.11 14:11
Ok, dann werd ich wohl updaten "müssen"
Mir war VS2010 immer unsympatisch, und alles was ich brauchte konnte auch das 2008er, also sah ich keinen Grund
lg
Kha - Mo 21.02.11 14:52
Ach herrje, der Herr Roden...
Anscheinend besteht seine Hauptaussage darin, dass Breaking Changes in einer Library aufrufenden Code brechen können, solange dieser nicht neu kompiliert wird. Wow, welch tiefschürfende Erkenntnis! Noch besser sind nur noch seine Argumente gegen benannte Parameter: ...ups, außer der Behauptung selbst stehen da ja gar keine. Und dass er den Nachweis, wo MS von den Features abrät, schuldig bleibt, hat er ja selbst zugestanden.
Wer auf Nummer sicher gehen will, benutzt eben jedes Mal null als Default-Wert und dann schön den ??-Operator. Dann ist man auch ziemlich nahe an der Implementierung von F# dran, die tatsächlich zur Laufzeit stattfindet.
Th69 - Mo 21.02.11 17:42
Oh, ich wußte nicht, daß der Herr Golen so polarisiert...
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!