資料介紹
本文檔的詳細(xì)介紹的是C++程序設(shè)計(jì)教程之C++工具的詳細(xì)資料說(shuō)明主要內(nèi)容包括了:1. 異常處理,2. 命名空間,3. 使用早期的函數(shù)庫(kù)
在C++發(fā)展的后期,有時(shí)C++編譯系統(tǒng)根據(jù)實(shí)際工作的需要,增加了一些功能,作為工具來(lái)使用,其中主要有模板(包括函數(shù)模板和類模板)、異常處理、命名空間和運(yùn)行時(shí)類型識(shí)別,以幫助程序設(shè)計(jì)人員更方便地進(jìn)行程序的設(shè)計(jì)和調(diào)試工作。1997年ANSI C++委員會(huì)將它們納入了ANSI C++標(biāo)準(zhǔn),建議所有的C++編譯系統(tǒng)都能實(shí)現(xiàn)這些功能。這些工具是非常有用的,C++的使用者應(yīng)當(dāng)盡量使用這些工具。
異常處理的任務(wù)
程序編制者不僅要考慮程序沒(méi)有錯(cuò)誤的理想情況,更要考慮程序存在錯(cuò)誤時(shí)的情況,應(yīng)該能夠盡快地發(fā)現(xiàn)錯(cuò)誤,消除錯(cuò)誤。

程序中常見的錯(cuò)誤有兩大類: 語(yǔ)法錯(cuò)誤和運(yùn)行錯(cuò)誤。在編譯時(shí),編譯系統(tǒng)能發(fā)現(xiàn)程序中的語(yǔ)法錯(cuò)誤。
有的程序雖然能通過(guò)編譯,也能投入運(yùn)行。但是在運(yùn)行過(guò)程中會(huì)出現(xiàn)異常,得不到正確的運(yùn)行結(jié)果,甚至導(dǎo)致程序不正常終止,或出現(xiàn)死機(jī)現(xiàn)象。這類錯(cuò)誤比較隱蔽,不易被發(fā)現(xiàn),往往耗費(fèi)許多時(shí)間和精力。這成為程序調(diào)試中的一個(gè)難點(diǎn)。
在設(shè)計(jì)程序時(shí),應(yīng)當(dāng)事先分析程序運(yùn)行時(shí)可能出現(xiàn)的各種意外的情況,并且分別制訂出相應(yīng)的處理方法,這就是程序的異常處理的任務(wù)。
在運(yùn)行沒(méi)有異常處理的程序時(shí),如果運(yùn)行情況出現(xiàn)異常,由于程序本身不能處理,程序只能終止運(yùn)行。如果在程序中設(shè)置了異常處理機(jī)制,則在運(yùn)行情況出現(xiàn)異常時(shí),由于程序本身已規(guī)定了處理的方法,于是程序的流程就轉(zhuǎn)到異常處理代碼段處理。用戶可以指定進(jìn)行任何的處理。
需要說(shuō)明,只要出現(xiàn)與人們期望的情況不同,都可以認(rèn)為是異常,并對(duì)它進(jìn)行異常處理。因此,所謂異常處理指的是對(duì)運(yùn)行時(shí)出現(xiàn)的差錯(cuò)以及其他例外情況的處理。
在一個(gè)小的程序中,可以用比較簡(jiǎn)單的方法處理異常。但是在一個(gè)大的系統(tǒng)中,如果在每一個(gè)函數(shù)中都設(shè)置處理異常的程序段,會(huì)使程序過(guò)于復(fù)雜和龐大。因此,C++采取的辦法是: 如果在執(zhí)行一個(gè)函數(shù)過(guò)程中出現(xiàn)異常,可以不在本函數(shù)中立即處理,而是發(fā)出一個(gè)信息,傳給它的上一級(jí)(即調(diào)用它的函數(shù)),它的上級(jí)捕捉到這個(gè)信息后進(jìn)行處理。如果上一級(jí)的函數(shù)也不能處理,就再傳給其上一級(jí),由其上一級(jí)處理。如此逐級(jí)上送,如果到最高一級(jí)還無(wú)法處理,最后只好異常終止程序的執(zhí)行。
這樣做使異常的發(fā)現(xiàn)與處理不由同一函數(shù)來(lái)完成。好處是使底層的函數(shù)專門用于解決實(shí)際任務(wù),而不必再承擔(dān)處理異常的任務(wù),以減輕底層函數(shù)的負(fù)擔(dān),而把處理異常的任務(wù)上移到某一層去處理。這樣可以提高效率。
C++處理異常的機(jī)制是由3個(gè)部分組成的,即檢查(try)、拋出(throw)和捕捉(catch)。把需要檢查的語(yǔ)句放在try塊中,throw用來(lái)當(dāng)出現(xiàn)異常時(shí)發(fā)出一個(gè)異常信息,而catch則用來(lái)捕捉異常信息,如果捕捉到了異常信息,就處理它。
- C++程序設(shè)計(jì)教程之多態(tài)性與虛函數(shù)的詳細(xì)資料說(shuō)明 5次下載
- C++程序設(shè)計(jì)教程之輸入輸出流的詳細(xì)資料說(shuō)明 8次下載
- C++程序設(shè)計(jì)教程之指針的詳細(xì)資料說(shuō)明 7次下載
- C++程序設(shè)計(jì)教程之基于對(duì)象的程序設(shè)計(jì)的詳細(xì)資料說(shuō)明 5次下載
- C++程序設(shè)計(jì)教程之數(shù)據(jù)類型與表達(dá)式的詳細(xì)資料說(shuō)明 0次下載
- C++程序設(shè)計(jì)教程之C++的初步知識(shí)的詳細(xì)資料說(shuō)明 31次下載
- C++程序設(shè)計(jì)教程之數(shù)組的詳細(xì)資料說(shuō)明 10次下載
- Visual C++程序設(shè)計(jì)教程之屬性單和屬性頁(yè)的詳細(xì)資料說(shuō)明 4次下載
- Visual C++程序設(shè)計(jì)教程之MFC中的資源與界面設(shè)計(jì)的詳細(xì)資料說(shuō)明 10次下載
- C++程序設(shè)計(jì)教程之語(yǔ)句的詳細(xì)資料說(shuō)明 1次下載
- C++程序設(shè)計(jì)教程之繼承的詳細(xì)資料說(shuō)明 98次下載
- C++程序設(shè)計(jì)教程之類的詳細(xì)資料說(shuō)明 2次下載
- C++程序設(shè)計(jì)教程之數(shù)據(jù)類型的詳細(xì)資料說(shuō)明 3次下載
- C++的實(shí)驗(yàn)教程之循環(huán)結(jié)構(gòu)程序設(shè)計(jì)的詳細(xì)資料說(shuō)明 4次下載
- C++語(yǔ)言入門教程之C++語(yǔ)言程序設(shè)計(jì)數(shù)組的詳細(xì)資料概述免費(fèi)下載 9次下載
- C++中實(shí)現(xiàn)類似instanceof的方法 1.3k次閱讀
- C++簡(jiǎn)史:C++是如何開始的 1.5k次閱讀
- C語(yǔ)言和C++中那些不同的地方 2.1k次閱讀
- 用C++構(gòu)建自己的GPT文檔工具 1.2k次閱讀
- 用OpenVINO? C++ API編寫YOLOv8-Seg實(shí)例分割模型推理程序 2.9k次閱讀
- 如何把C++程序改寫成C語(yǔ)言 4.5k次閱讀
- C++程序異常處理機(jī)制是什么 1.6k次閱讀
- C與C++混合編程是什么 2.9k次閱讀
- C++語(yǔ)言的發(fā)展 976次閱讀
- C/C++基礎(chǔ)知識(shí)匯總 3.2k次閱讀
- C語(yǔ)言和C++的特點(diǎn)與用法詳細(xì)說(shuō)明 5.3k次閱讀
- C++的異常機(jī)制底層原理與實(shí)際應(yīng)用詳細(xì)說(shuō)明 3.7k次閱讀
- C++:引用的使用場(chǎng)景 4.6k次閱讀
- C++封裝:this指針 4k次閱讀
- C++的這些資源你多知道嗎?國(guó)外程序員整理的C++資源大全 6.9k次閱讀
下載排行
本周
- 1MDD品牌三極管BC807數(shù)據(jù)手冊(cè)
- 3.00 MB | 次下載 | 免費(fèi)
- 2MDD品牌三極管BC817數(shù)據(jù)手冊(cè)
- 2.51 MB | 次下載 | 免費(fèi)
- 3MDD品牌三極管D882數(shù)據(jù)手冊(cè)
- 3.49 MB | 次下載 | 免費(fèi)
- 4MDD品牌三極管MMBT2222A數(shù)據(jù)手冊(cè)
- 3.26 MB | 次下載 | 免費(fèi)
- 5MDD品牌三極管MMBTA56數(shù)據(jù)手冊(cè)
- 3.09 MB | 次下載 | 免費(fèi)
- 6MDD品牌三極管MMBTA92數(shù)據(jù)手冊(cè)
- 2.32 MB | 次下載 | 免費(fèi)
- 7STM32G474 HRTIME PWM 丟波問(wèn)題分析與解決
- 1.00 MB | 次下載 | 3 積分
- 8新能源電動(dòng)汽車高壓線束的銅鋁連接解決方案
- 2.71 MB | 次下載 | 2 積分
本月
- 1愛華AIWA HS-J202維修手冊(cè)
- 3.34 MB | 37次下載 | 免費(fèi)
- 2PC5502負(fù)載均流控制電路數(shù)據(jù)手冊(cè)
- 1.63 MB | 23次下載 | 免費(fèi)
- 3NB-IoT芯片廠商的資料說(shuō)明
- 0.31 MB | 22次下載 | 1 積分
- 4H110主板CPU PWM芯片ISL95858HRZ-T核心供電電路圖資料
- 0.63 MB | 6次下載 | 1 積分
- 5UWB653Pro USB口測(cè)距通信定位模塊規(guī)格書
- 838.47 KB | 5次下載 | 免費(fèi)
- 6技嘉H110主板IT8628E_BX IO電路圖資料
- 2.61 MB | 4次下載 | 1 積分
- 7蘇泊爾DCL6907(即CHK-S007)單芯片電磁爐原理圖資料
- 0.04 MB | 4次下載 | 1 積分
- 8蘇泊爾DCL6909(即CHK-S009)單芯片電磁爐原理圖資料
- 0.08 MB | 2次下載 | 1 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935137次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191439次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183353次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81602次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73822次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App





創(chuàng)作
發(fā)文章
發(fā)帖
提問(wèn)
發(fā)資料
發(fā)視頻
上傳資料賺積分
評(píng)論