Cartea de referință despre delfii

Afirmă, procedură

Procedura Assert este concepută pentru a documenta și a verifica validitatea ipotezelor făcute la scrierea codului. Assert nu este de fapt o procedură. Compilatorul se ocupă de asimilarea apelurilor într-un mod special și generează numele fișierului și numărul liniei în care afirmația a fost încălcată pentru a facilita căutarea erorii care a cauzat-o.
Dacă condiția Test este False, Delphi apelează procedura pe pointerul definit de variabila AssertErrorProc. Modulul SysUtils stabilește valoarea acestei variabile la procedura care solicită excepția EAssertionFailed. Dacă AssertErrorProc este zero, Delphi provoacă eroarea 21 (EAssertError).
Puteți specifica un mesaj opțional pe care Delphi îl va trece la procedura AssertErrorProc. Dacă nu este specificat niciun mesaj, Delphi utilizează șirul implicit, "Assertion failed".

Sfaturi și trucuri

  • Modul corect de a utiliza procedura Assert este de a verifica condițiile care trebuie îndeplinite pentru ca codul să funcționeze corect. Toți programatorii fac presupuneri despre starea internă a obiectului, sensul și corectitudinea argumentelor subrutinei sau valoarea returnată de funcție. Cel mai bine este să tratezi ipotezele ca verificând erorile programatorului, nu pe utilizator.
  • Puteți dezactiva ipotezele utilizând directiva $ Assertions sau $ C, dar motivele pentru aceasta sunt rare. O eroare "afirmare a eșuat" poate confunda un utilizator, dar mult mai mult ar supăra pierderile de date.

Vezi de asemenea

Articole similare