Autor Beitrag
Andi1982
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 497

WinXP HE
D6 Enterprise
BeitragVerfasst: Mo 18.11.02 12:55 
Hallo,
ich habe jetzt schon in mehereren Programmen gesehen dass am Ende einer For-Schleife halt; steht.
z.B.
ausblenden Quelltext
1:
2:
3:
FOR i := 1 TO 100 DO   
  IF... THEN Break;
halt;


Aber warum macht man da nicht
ausblenden Quelltext
1:
2:
3:
4:
FOR i := 1 TO 100 DO   
 BEGIN
           ....
 END;

????

Gruß Andi
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mo 18.11.02 13:11 
Das halt aus deinem ersten Code-Auszug gehört nicht mehr zur for-Schleife. Besteht der Schleifenrumpf aus nur einer Anweisung kann das begin und end weggelassen werden. Manche Programmierer setzen es trotzdem, sei es wegen der bessere Übersichtlichkeit oder damit sie es bei einer späteren Erweiterung des Codes nicht vergessen.

halt beendet eine Anwendung. Aus der Delphi-Hilfe:
Zitat:

Initiates abnormal termination of a program.

Wärend hingegen break aus einer Schleife springt und den da nach folgenden Code ausführt:
Zitat:

Causes the flow of control to exit a for, while, or repeat statement.


Kuck in deinem Buch noch mal bei den Schleifen nach und schlag halt und break auch noch mal in der Hilfe oder in deinem Buch nach.
Andi1982 Threadstarter
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 497

WinXP HE
D6 Enterprise
BeitragVerfasst: Mo 18.11.02 13:16 
Ah ja, stimmt, auf das mit der For-Schleife hätt ich eigentlich selber drauf kommen können.

Vielen Dank für die schnelle Antwort!

_________________
Solange die Bombe tickt ist alles in Ordnung, erst wenn sie damit aufhört wird es problematisch...
AndyB
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1173
Erhaltene Danke: 14


RAD Studio XE2
BeitragVerfasst: Mo 18.11.02 18:49 
Luckie hat folgendes geschrieben:
halt beendet eine Anwendung. Aus der Delphi-Hilfe:
Zitat:

Initiates abnormal termination of a program.


Wobei die Betonung auf abnormal liegt.

_________________
Ist Zeit wirklich Geld?
Popov
Gast
Erhaltene Danke: 1



BeitragVerfasst: Mo 18.11.02 21:46 
ausblenden volle Höhe Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;

type
  TForm1 = class(TForm)
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

initialization
  ShowMessage('Nicht überall ist "Halt" die abnormalle Art.');
  ShowMessage('"Close" funktioniert hier zum Beispiel nicht.');
  ShowMessage('Der Grund ist, daß Close out of Formular ist.');
  ShowMessage('"Halt" ist einfach die Pascal Methode und ...');
  ShowMessage('sollte da eingesetzt werden wo nur Pascal ist');
  ShowMessage(';-)');
  Halt;
end.


Dann gibts noch die Windowsmetode.