Programlama | Programlama Dilleri | C Programlama Dili |C++

Hata
  • XML Parsing Error at 1:82. Error 9: Invalid character
Anasayfa Programlama C++ Builder ApplicationEvents Nesnesi ?le Exception Yakalama


ApplicationEvents Nesnesi ?le Exception Yakalama

AÇIKLAMA

C++ Builder 6 projesidir.

Exception (Hata) yakalama bir programc?n?n bir program? yazarken dikkat etmesi gereken en önemli hususlardan biridir. Bizde bilinen en basit örne?i ald?k herhangi bir say?y? 0'a bölmeyi. Hepimiz bilirizki bir say? 0'a bölünmez ve program debugger yard?m?yla bir hata uyar? verecektir. Tabi verilen bu hata uyar?s? bir programc? aç?s?ndan anla??labilir olmas?na ra?men kullan?c? taraf?ndan tamamen bir arapsaç? olabilir yani kullan?c? o hatadan hiçbir?ey anlamayabilir hatta program?n hata yapt???n? dü?ünüp (hatal? giri? yapsa bile 0 örne?i gibi) sizi bile suçlayabilir. Örnek ba?ka bir durum belirteyim. Örne?in bir veritaban? uygulamas? yaz?yorsunuz ve program?n?z?nda bir veritaban? serverina ba?land???n? dü?ünelim. Kendi yazd???n?z uygulaman?n kusursuz oldu?unu varsayal?m hiçbir hata yok süper program çal???yor. Peki ama ya satt???n?z ve bir noktaya yerle?tirdi?iniz uygulaman?z?n veritaban? serverinin çal??mamas? sebebiyle (MySQL, SQL Server veya Oracle veritaban? serveri devre d??? kald?)ona ba?lanamad???n? dü?ünelim. Kusursuz yazd???n?z uygulama hata mesaj? verecektir ve kullan?c? ?a??racakt?r ve sizi arayacakt?r, belkide sizi suçlayacakt?r yada size ula?amay?p zaman kaybedecektir hepsi bir problem. Oysaki yapman?z gereken ?ey kodunuzda bulunan kullan?c? bazl? veya belirtti?im özel durumlar? iyi analiz edip onlara uygun düzgün hata mesajlar? olu?turarak kullan?c?y? rahatlatt?rmakt?r. 

En önemli noktaya gelirsek yazd???m?z Exception yakalama kodlar?n? program? derleyip olu?turduktan sonra çal??an exe üzerine denemeyiniz. Çünkü derleyici devrede oldu?undan kendi dilinde olan hata mesaj?n? yine üretecektir. Tekrar F9 tu?una bast???n?zda sizin yazd???n?z hata mesaj? gelecektir. Hemen pani?e kap?lmay?n do?ru yapt?n?z. Çünkü as?l yapman?z gereken sadece exeden program? çal??t?rmakt?r. Derleyici (C++ Builder üzerindenl) ile  de?il gidip direk olu?an exe yi çift t?klayarak çal??t?rd???n?zda ve uygun hata durumu olu?turdu?unuzda derleyici taraf?ndan olu?turulan exception yerine sizin olu?turdu?unuz hata mesaj? gelecektir.

Program?n Tamam?n? A?a??daki Linkten ?ndirebilirsiniz

Linki Görebilmeniz ?çin Üye Olman?z Gerekmektedir...

Üye Kay?t

Program Kodu:

  1. //---------------------------------------------------------------------------
  2.  
  3. #include <vcl.h>
  4. #pragma hdrstop
  5.  
  6. #include "Unit1.h"
  7. //---------------------------------------------------------------------------
  8. #pragma package(smart_init)
  9. #pragma resource "*.dfm"
  10. TForm1 *Form1;
  11. //---------------------------------------------------------------------------
  12. __fastcall TForm1::TForm1(TComponent* Owner)
  13.         : TForm(Owner)
  14. {
  15. }
  16. //---------------------------------------------------------------------------
  17.  
  18. void __fastcall TForm1::BitBtn1Click(TObject *Sender)
  19. {
  20. int a=5;
  21. int b=0;
  22. Form1->Caption=FloatToStr(a/b);
  23. }
  24. //---------------------------------------------------------------------------
  25.  
  26. void __fastcall TForm1::ApplicationEvents1Exception(TObject *Sender,
  27.       Exception *E)
  28. {
  29. ShowMessage("Hata Mesaj?:"+E->ClassName()+"  Hata Aç?klamas?:"+E->Message);        
  30. }
  31. //---------------------------------------------------------------------------
Yorumlar (0)
Sadece kayıtlı kullanıcılar yorum yazabilir!
Son Güncelleme ( Salı, 30 Ağustos 2011 01:03 )  
amınıza koyayım amınıza koyayım amınıza koyayım amınıza koyayım amınıza koyayım amınıza koyayım