Difference between revisions of "Try/fi"

From Lazarus wiki
Jump to navigationJump to search
(Created page with "{{Try}} Varattu sana <syntaxhighlight lang="pascal" enclose="none">try</syntaxhighlight> on osa joko <syntaxhighlight lang="pascal" enclose="none">try</synt...")
 
m (Fixed syntax highlighting)
Line 7: Line 7:
  
  
<syntaxhighlight>
+
<syntaxhighlight lang=pascal>
 
try
 
try
 
   // koodi, joka saattaa aiheuttaa poikkeuksen
 
   // koodi, joka saattaa aiheuttaa poikkeuksen
Line 17: Line 17:
 
Vain poikkeuksen sattuessa <syntaxhighlight lang="pascal" enclose="none">except</syntaxhighlight>:n ja <syntaxhighlight lang="pascal" enclose="none">end</syntaxhighlight>:n välinen koodi suoritetaan.
 
Vain poikkeuksen sattuessa <syntaxhighlight lang="pascal" enclose="none">except</syntaxhighlight>:n ja <syntaxhighlight lang="pascal" enclose="none">end</syntaxhighlight>:n välinen koodi suoritetaan.
  
<syntaxhighlight>
+
<syntaxhighlight lang=pascal>
 
try
 
try
 
   // koodi, joka saattaa aiheuttaa poikkeuksen
 
   // koodi, joka saattaa aiheuttaa poikkeuksen

Revision as of 01:10, 2 March 2020

Deutsch (de) English (en) español (es) suomi (fi) русский (ru)

Varattu sana try on osa joko try..finally lohkoa tai try..except-lohkoa.

Jos poikkeus tapahtuu, kun koodia suoritetaan try:n ja finally:n välillä, suoritusta jatketaan finally. Jos poikkeusta ei tapahdu, myös finally ja end:n välinen koodi suoritetaan.


try
  // koodi, joka saattaa aiheuttaa poikkeuksen
finally 
  // suoritetaan aina viimeisenä
end;

Vain poikkeuksen sattuessa except:n ja end:n välinen koodi suoritetaan.

try
  // koodi, joka saattaa aiheuttaa poikkeuksen
except 
  // toteutetaan vain poikkeus tapauksessa
  on E: EDatabaseError do
    ShowMessage( 'Database error: '+ E.ClassName + #13#10 + E.Message );
  on E: Exception do
    ShowMessage( 'Error: '+ E.ClassName + #13#10 + E.Message );
end;


Katso myös