Autor Beitrag
Stephan202
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 16



BeitragVerfasst: Do 17.02.11 01:02 
Hallo,

ich habe eine Methode, die zwei Ausgabewerte berechnet und die verschiedenen Datentyps sind.
Wie ich inzwischen weiß, kann man nur einen Wert ausgeben, dieser kann aber, als Objekt definiert, zwei Werte beinhalten.
Wie macht man so was und wo muss man dazu was deklarieren/kontruieren?

Das Ganze soll ungefähr so aussehen:

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
class xyz
{
  double a = 3;
  double b = 4;
  
  Ergebnis = Rechteck(a, b)

  public datentyp? Rechteck(double a, double b)
  {
    double flaeche = a*b;
    double umf = 2*(a+b);
    string umfang = umf.ToString;
  }
  
}


Wie kann ich jetzt die Variablen umfang und flaeche an die Funktion Rechteck zurückgeben?

Steh da grad voll auf dem Schlauch...

Moderiert von user profile iconChristian S.: C#-Tags hinzugefügt
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Do 17.02.11 01:12 
Hallo!

Ich würde da keinen neuen Datentyp für definieren, sondern mit out-Parametern arbeiten:

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
  public void Rechteck(double a, double b, out double umf, out double flaeche)
  {
    flaeche = a*b;
    umf = 2*(a+b);
    string umfang = umf.ToString;
  }

Wenn Du die Methode aufrufst, übergibst Du als dritten und vierten Parameter zwei double-Variablen und nach dem Aufruf der Methode stehen die Ergebnisse in den beiden Variablen.

Der Name "Rechteck" für eine Methode ist übrigens schlecht, weil überhaupt nicht drin steckt, was die Methode macht :-)

Grüße
Christian

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".

Für diesen Beitrag haben gedankt: Stephan202