Einzelnen Beitrag anzeigen

Benutzerbild von Alexander Roth
Alexander Roth

Registriert seit: 17. Mai 2004
Ort: Kenn
574 Beiträge
 
Turbo Delphi für Win32
 
#1

Procedure aus Procedure aufrufen und 1. sofort beenden

  Alt 17. Mai 2007, 15:22
Hi,

also ich habe ein bisschen kompliziertes Problem.
Also vereinfacht habe ich so was:
Delphi-Quellcode:
procedure A1;
begin
  Mache blabla;
  A2;
end;

procedure A2;
begin
  Mache blablablablablablablabla;
  A1;
end;
Ja, ja ich weis das das ne Endlosschleife ist. Das ist aber so beabsichtigt und auch nicht das Problem. (Ich habe spezielle Abbruchbedingungen drin)

Es ist wichtig, dass NACH A1 wieder A2 aufgerufen wird. Doch zurzeit wird der Stack mit lokalen Variablen (von A1 und oder A2) überfrachtet und es kommt zum Kollaps.
Wie kann ich NACH A1 A2 aufrufen und nicht IN A1?
Und auch:
Wie kann ich NACH A2 A1 aufrufen und nicht IN A2?

Ich kann leider aus Gründen der Struktur nicht bzw. nur extrem umständlich folgendes machen:
Delphi-Quellcode:
procedure A1;
begin
  Mache blabla;
end;

procedure A2;
begin
  Mache blablablablablablablabla;
end;

procedure haupt;
begin
  repeat
    a2;
    a1;
  until abbruchbedinung;
end;
Ist so etwas möglich nicht IN sondern NACH einer Procedure eine andere Procedure aufzurufen ohne dass noch Speicherplatz für die alte Procedure reserviert bleibt?

Gruß Alexander
Alexander Roth
Ich bin umgestiegen auf: Lazarus und Ubuntu! Alles OpenSource!

Besuch doch mal: www.roth.us.ms
  Mit Zitat antworten Zitat