Delphi: Break, Exit, Continue og Abort. Hva var forskjellen igjen?

Det er lett å gå litt i surr av disse RTL-prosedyrene, da navnene har nokså lik betydning. De gjør forskjellige ting, men alle foretar hopp i koden på et vis. Lag et bokmerke til denne siden, så du kan finne den raskt igjen når du trenger den!
Det er verd å huske på at slike prosedyrer skal brukes med stor forsiktighet. Koden blir fort uoversiktlig med utstrakt bruk av funksjoner som hopper rundt i koden. Aller verst er Goto, den skal du ikke bruke. Jeg vil ikke en gang fortelle hvordan den virker.

Break:
Hopper ut av en loop selv om den kanskje egentlig ikke var ferdig.
Hvis du for eksempel leter etter et bestemt element i en liste kan du hoppe ut av loopen når du finner det aktuelle elementet. Da sparer du tid ved at du slipper å lete igjennom resten av lista.

Exit:
Hopper ut av gjeldende funksjon eller prosedyre. Kommer programmet til en Exit i en funksjon vil den returnere den siste verdien Result ble satt til.

Continue:
Tvinger fram ny iterasjon i en løkke. Eventuell kode som kommer etter kall til Continue kjøres ikke i den  iterasjonen der Continue inntreffer.

Abort:
Brukes i en try-except eller try-finally. Abort kaster et stille exception, som håndteres av koden i except eller finally.

Kommentarer

Skriv ny kommentar

Innholdet i dette feltet blir holdt privat og vil ikke bli vist offentlig.
  • Internettadresser og e-postadresser konverteres til lenker automatisk.
  • Tillatte HTML-merker: <a> <p> <span> <div> <h1> <h2> <h3> <h4> <h5> <h6> <img> <map> <area> <hr><br> <br /> <ul> <ol> <li> <dl> <dt> <dd> <table> <tr> <td> <em> <b> <u> <i> <strong> <font> <del> <ins> <sub> <sup> <quote> <blockquote> <pre> <address> <code><cite> <embed> <object> <strike> <caption>
  • Automatisk linjeskift

Mer informasjon om formateringsvalgene