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" enclose="none">On</syntaxhighlight>-[[Keyword/fi|avainsanaa]] käytetään [[Exceptions/fi|poikkeuksen]] aiheuttaman tyypien toteamisessa. <syntaxhighlight lang="pascal" enclose="none">On</syntaxhighlight>-lauseke tarkistaa onko kyseessä lukuisista poikkeusluokista joku tietty..
+
<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.

Katso myös