Einführung in C#
out-Parameter
Methoden mit mehreren Rückgabeparametern
Soll eine Methode mehr als einen Parameter zurück geben, müssen entsprechende Ausgabeparameter verwendet werden. Ein Ausgabeparameter wird mit dem Schlüsselwort out übergeben.
Um einen out-Parameter zu verwenden, muss die Methodendefinition und die aufrufende Methode das Schlüsselwort out verwenden. Ein out-Parameter kann an jeder beliebigen Stelle der Methodendefinition stehen. Innerhalb der Methode muss bei den mit out gekennzeichneten Variablen zwingend ein Wert zugewiesen werden.
static void Main(string[] args) { int x; Method(out x); // x hat nun den Wert 2 } static void Method(out int x) { x = 2; }
Das folgende Beispiel zur Berechnung des Treibstoffverbrauches zeigt die Verwendung zweier out-Parameter
namespace ConsoleApplication_out { class Program { static void Main(string[] args) { double kosten_pro_km, verbrauch_pro_100km; Console.Write("Preis pro Liter Treibstoff: "); double preis_pro_liter = Convert.ToDouble(Console.ReadLine()); Console.Write("Gefahrene km: "); int km_gefahren = Convert.ToInt32(Console.ReadLine()); Console.Write("Treibstoffverbrauch in Liter: "); double liter = Convert.ToDouble(Console.ReadLine()); Spritverbrauch(liter, preis_pro_liter, km_gefahren, out kosten_pro_km, out verbrauch_pro_100km); Console.WriteLine("\nTreibstoffverbrauch auf 100km: " + verbrauch_pro_100km); Console.WriteLine("Treibstoffkosten pro km: " + kosten_pro_km); Console.ReadLine(); } public static void Spritverbrauch(double liter, double preis_pro_liter, int km_gefahren, out double kosten_pro_km, out double verbrauch_pro_100km) { kosten_pro_km = liter * preis_pro_liter / km_gefahren; verbrauch_pro_100km = liter * 100 / km_gefahren; } } }