Difference between revisions of "On/fi"
From Free Pascal wiki
Jump to navigationJump to search (Created page with "{{On}} <syntaxhighlight lang="pascal" enclose="none">On</syntaxhighlight>-avainsanaa käytetään poikkeuksen aiheuttaman tyypien toteamisess...") |
|||
Line 1: | Line 1: | ||
{{On}} | {{On}} | ||
− | <syntaxhighlight lang="pascal" | + | <syntaxhighlight lang="pascal" inline>On</syntaxhighlight>-[[Keyword/fi|avainsanaa]] käytetään [[Exceptions/fi|poikkeuksen]] aiheuttaman tyypien toteamisessa. <syntaxhighlight lang="pascal" inline>On</syntaxhighlight>-lauseke tarkistaa onko kyseessä lukuisista poikkeusluokista joku tietty.. |
<syntaxhighlight lang="pascal"> | <syntaxhighlight lang="pascal"> |
Latest revision as of 17:20, 6 August 2022
│
Deutsch (de) │
English (en) │
suomi (fi) │
On
-avainsanaa käytetään poikkeuksen aiheuttaman tyypien toteamisessa. On
-lauseke tarkistaa onko kyseessä lukuisista poikkeusluokista joku tietty..
try
//mahdollisesti poikkeuksia aiheuttava koodilohko
// ...
except
on {poikkeustyyppi} do begin
// poikkeusten käsittely lohko, joka käsittelee jotkut poikkeukset
end;
end;
program range_error;
{$mode objfpc} {$H+}
{$R+} // Alue tarkastelu päälle
uses sysutils;
var
i,j:integer;
arr:array[0..9] of integer;
begin
try
i := 0;
j := 10;
while i < j do
begin
inc(i);
arr[i] := i + j;
WriteLn( i,' ', arr[i]);
end;
except
on E:ERangeError do begin
WriteLn('Virhe: voimassa olevan alueen ylitys havaittu.');
WriteLn(E.Message);
end;
on E:Exception do // yleinen käsittelijä
WriteLn('Caught ' + E.ClassName + ': ' + E.Message);
end;
WriteLn('Paina jotain näppäintä');
ReadLn;
end.