Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  TM - Plant Simulation
  Rückgabe von meheren Werten!?

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  Rückgabe von meheren Werten!? (1612 mal gelesen)
Schreiber123
Mitglied


Sehen Sie sich das Profil von Schreiber123 an!   Senden Sie eine Private Message an Schreiber123  Schreiben Sie einen Gästebucheintrag für Schreiber123

Beiträge: 7
Registriert: 18.02.2012

erstellt am: 17. Mrz. 2012 17:01    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo liebes Forum,

es geht darum, dass ich aus Methode A die Methode B mit
m_B(para1,para2,para3,para4);
aufrufe. Die übergebenen Paramter sind im Kopfteil der Methode m_B deklariert. Das funktioniert soweit auch ganz gut.
Mein Problem ist das jetzt in der Methode B Berechnungen stattfinden und wiederum drei Paramter zurückgegeben werden sollen.

mir gelingt es sowohl mit "return" als auch mit "result:= " nur einen Parameter zurückzugeben, wenn dieser im kopf mit z.B. :integer definiert ist

Ziel--> return p1,p2,p3; -- gibt die drei berechneten parameter an die aufrufende methode A zurück

kann man "byref" verwenden und wenn ja wie? wie und wo muss ich die paramter deklarieren, die zurückgegeben werden sollen.

Ich hoffe auf Hilfe.
Danke!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Bon Simul
Mitglied
Simulant


Sehen Sie sich das Profil von Bon Simul an!   Senden Sie eine Private Message an Bon Simul  Schreiben Sie einen Gästebucheintrag für Bon Simul

Beiträge: 1250
Registriert: 08.08.2011

Plant Simulation 10.1, 11 ff Professional

erstellt am: 24. Mrz. 2012 08:41    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Schreiber123 10 Unities + Antwort hilfreich

Hallo,

mit return kann wirklich nur ein Wert zurückgegeben werden.
Für Ihr Problem gibt es zwei Lösungen:
a) globale Variablen
b) Übergabe der Ergebnisvariablen als Referenz (byref)

Für den zweiten Fall müssten Sie in der Berechnungsmethode in Ihrem Fall 7 Übergabeparameter definieren (davon 3 als Ergebnisvariablen),
ihre Berechnungen durchführen und zum Schluss den Ergebnisvariablen die Ergebnisse zuweisen.Die Berechnungsmethode verändert dann die Werte der Variablen in der aufrufenden Methode und Sie können nach der Methodenabarbeitung auf die geänderten Werte zugreifen.

z.B. Berechnungsmethode

Code:

para1:integer;para2:integer;para3:integer;para4:integer;
byref ergebnis1:integer;byref ergebnis2:integer;
byref ergebnis3:integer)
is
do
--Ihre Berechnungen, Ergebnisse werden in den ergebnisvariablen
--gespeichert
ergebnis1:=xxxx;
ergebnis2:=xxxx;
ergebnis3:=xxxx;


end;


In der aufrufenden Methode (Methode m_a) müssen Sie die Ergebnisvariablen als lokale Variablen definieren und beim Aufruf der Methode m_b mit übergeben (7 Übergabeparameter)

Code:

is
  ergebnis1:integer;
  ergebnis2:integer;
  ergebnis3:integer;
  --- ...
do
  -- ...
  m_b(para1,para2,para3,para4,ergebnis1,ergebnis2,ergebnis3);
  -- weiter rechnen mit den ergebnisvariablen
  xyz:=xxx*ergebnis1; --usw.
end;

Rest: Hilfe zu byref

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz