首頁 考試吧論壇 Exam8視線 考試商城 網(wǎng)絡(luò)課程 模擬考試 考友錄 實(shí)用文檔 求職招聘 論文下載
2011中考 | 2011高考 | 2012考研 | 考研培訓(xùn) | 在職研 | 自學(xué)考試 | 成人高考 | 法律碩士 | MBA考試
MPA考試 | 中科院
四六級(jí) | 職稱英語 | 商務(wù)英語 | 公共英語 | 托福 | 雅思 | 專四專八 | 口譯筆譯 | 博思 | GRE GMAT
新概念英語 | 成人英語三級(jí) | 申碩英語 | 攻碩英語 | 職稱日語 | 日語學(xué)習(xí) | 法語 | 德語 | 韓語
計(jì)算機(jī)等級(jí)考試 | 軟件水平考試 | 職稱計(jì)算機(jī) | 微軟認(rèn)證 | 思科認(rèn)證 | Oracle認(rèn)證 | Linux認(rèn)證
華為認(rèn)證 | Java認(rèn)證
公務(wù)員 | 報(bào)關(guān)員 | 銀行從業(yè)資格 | 證券從業(yè)資格 | 期貨從業(yè)資格 | 司法考試 | 法律顧問 | 導(dǎo)游資格
報(bào)檢員 | 教師資格 | 社會(huì)工作者 | 外銷員 | 國際商務(wù)師 | 跟單員 | 單證員 | 物流師 | 價(jià)格鑒證師
人力資源 | 管理咨詢師考試 | 秘書資格 | 心理咨詢師考試 | 出版專業(yè)資格 | 廣告師職業(yè)水平
駕駛員 | 網(wǎng)絡(luò)編輯
衛(wèi)生資格 | 執(zhí)業(yè)醫(yī)師 | 執(zhí)業(yè)藥師 | 執(zhí)業(yè)護(hù)士
會(huì)計(jì)從業(yè)資格考試會(huì)計(jì)證) | 經(jīng)濟(jì)師 | 會(huì)計(jì)職稱 | 注冊(cè)會(huì)計(jì)師 | 審計(jì)師 | 注冊(cè)稅務(wù)師
注冊(cè)資產(chǎn)評(píng)估師 | 高級(jí)會(huì)計(jì)師 | ACCA | 統(tǒng)計(jì)師 | 精算師 | 理財(cái)規(guī)劃師 | 國際內(nèi)審師
一級(jí)建造師 | 二級(jí)建造師 | 造價(jià)工程師 | 造價(jià)員 | 咨詢工程師 | 監(jiān)理工程師 | 安全工程師
質(zhì)量工程師 | 物業(yè)管理師 | 招標(biāo)師 | 結(jié)構(gòu)工程師 | 建筑師 | 房地產(chǎn)估價(jià)師 | 土地估價(jià)師 | 巖土師
設(shè)備監(jiān)理師 | 房地產(chǎn)經(jīng)紀(jì)人 | 投資項(xiàng)目管理師 | 土地登記代理人 | 環(huán)境影響評(píng)價(jià)師 | 環(huán)保工程師
城市規(guī)劃師 | 公路監(jiān)理師 | 公路造價(jià)師 | 安全評(píng)價(jià)師 | 電氣工程師 | 注冊(cè)測(cè)繪師 | 注冊(cè)計(jì)量師
繽紛校園 | 實(shí)用文檔 | 英語學(xué)習(xí) | 作文大全 | 求職招聘 | 論文下載 | 訪談 | 游戲

2011計(jì)算機(jī)等考Delphi講義:異常處理與程序調(diào)試

Delphi提供了一套強(qiáng)大的異常處理機(jī)制。巧妙地利用它,可以使你的程序更為強(qiáng)健,使用更為友好。

  12.3.6 利用異常響應(yīng)編程

  利用異常處理機(jī)制不僅能使程序更加健壯,而且也提供了一種使程序更加簡(jiǎn)捷、明了的途徑。事實(shí)上,使用自定義異常類就是一種利用異常響應(yīng)編程的方式。這里我們?cè)儆懻搸讉(gè)利用標(biāo)準(zhǔn)異常類編程的例子。

  比如為了防止零作除數(shù),可以在進(jìn)行除法運(yùn)算前使用if…then…else語句。但如果有一系列這樣的語句則繁瑣程度是令人難以忍受的。這時(shí)候我們可能傾向于使用EDivByZero異常。例如如下一段程序就遠(yuǎn)比用if…then…else實(shí)現(xiàn)簡(jiǎn)捷明了。

  function Calcu(x,y,z,a,b,c:Integer):Real;

  begin

  try

  Result := x/a+y/b+z/c ;

  except

  on EDivByZero do

  Result := 0;

  end;

  end;

  在(6.2.3)記錄文件的打開與創(chuàng)建中就是利用異常響應(yīng)來實(shí)現(xiàn)文件的打開或創(chuàng)建。

  procedure TRecFileForm.OpenButtonClick(Sender: TObject);

  begin

  if OpenDialog1.Execute then

  FileName := OpenDialog1.FileName

  else

  exit;

  AssignFile(MethodFile,Filename);

  try

  Reset(MethodFile);

  FileOpened := True;

  except

  on EInOutError do

  begin

  try

  if FileExists(FileName) = False then

  begin

  ReWrite(MethodFile);

  FileOpened := True;

  end

  else

  begin

  FileOpened := False;

  MessageDlg('文件不能打開',mtWarning,[mbOK],0);

  end;

  except

  on EInOutError do

  begin

  FileOpened := False;

  MessageDlg('文件不能創(chuàng)建',mtWarning,[mbOK],0);

  end;

  end;

  end;

  end;

  if FileOpened = False then exit;

  Count := FileSize(MethodFile);

  if Count > 0 then

  ChangeGrid;

  RecFileForm.Caption := FormCaption+' -- '+FileName;

  NewButton.Enabled := False;

  OpenButton.Enabled := False;

  CloseButton.Enabled := True;

  end;

  總之,利用異常響應(yīng)編程的中心思想是雖然存在預(yù)防異常發(fā)生的確定方法,但卻對(duì)異常的產(chǎn)生并不進(jìn)行事前預(yù)防,而是進(jìn)行事后處理,并以此來簡(jiǎn)化程序的邏輯結(jié)構(gòu)。

  相關(guān)推薦:2010年9月計(jì)算機(jī)等級(jí)考試試題及答案解析專題
       預(yù)告:名師解析2010年9月計(jì)算機(jī)等級(jí)考試試題答案
       2010年9月計(jì)算機(jī)等級(jí)考試成績(jī)查詢時(shí)間及入口
       2010年9月計(jì)算機(jī)等考成績(jī)查詢短信免費(fèi)提醒開通
文章搜索
版權(quán)聲明:如果計(jì)算機(jī)等級(jí)考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請(qǐng)與我們聯(lián)系800@exam8.com,我們將會(huì)及時(shí)處理。如轉(zhuǎn)載本計(jì)算機(jī)等級(jí)考試網(wǎng)內(nèi)容,請(qǐng)注明出處。