算法與數(shù)據(jù)結(jié)構(gòu):lecture 12 C++工具_(dá)第1頁
算法與數(shù)據(jù)結(jié)構(gòu):lecture 12 C++工具_(dá)第2頁
算法與數(shù)據(jù)結(jié)構(gòu):lecture 12 C++工具_(dá)第3頁
算法與數(shù)據(jù)結(jié)構(gòu):lecture 12 C++工具_(dá)第4頁
算法與數(shù)據(jù)結(jié)構(gòu):lecture 12 C++工具_(dá)第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、C+工具程序中常見的錯誤語法錯誤編譯階段可以發(fā)現(xiàn)可以很快地發(fā)現(xiàn)出錯的位置和原因,并加以改正運行錯誤運行過程中的異常應(yīng)當(dāng)事先分析程序運行時,可能出現(xiàn)的各種意外,并分別制定處理方法異常處理:對運行時出現(xiàn)的差錯以及其他例外情況的處理。C+處理異常的機(jī)制檢查:把需要檢查的語句放在try塊中。拋出:throw用來當(dāng)出現(xiàn)異常時,發(fā)出一個異常信息。捕捉:catch用來捕捉異常信息,如果捕捉到了異常信息,就處理它。#include #include using namespace std;double triangle(double a, double b, double c)double s=(a+b+c)

2、/2;if(a+b=c| b+c=a | c+aabc; trywhile(a0 & b0 & c0) couttriangle(a,b,c)abc; catch(double)couta=a,b=b,c=c, not a triangle!endl; return 0;名字空間的引入軟件往往涉及多個類,這些類可能由不同人、在不同時間開發(fā),很可能在不同的頭文件中使用了相同的名字來命名類或函數(shù),從而導(dǎo)致名字沖突。命名空間:全局作用域名字的一個附加層訪問全局作用域名字必須首先指定其所在的命名空間名字,以關(guān)鍵字namespace開始,后接命名空間名字和定義體名字空間定義格式:namespace 命名

3、空間名字 全局作用域名字的定義訪問:內(nèi)部:直接訪問外部:加命名空間名字和作用域限定符(:)命名空間名:名字#include namespace MyNamesint x=10;int y=2*x;int main()std:coutMyNames:xstd:endl;std:coutMyNames:ystd:endl;std:coutMyNames:x + MyNames:y std:endl;return 0;102030using namespace語句為了在應(yīng)用程序中直接訪問某命名空間定義的名字,可以采用:using namespace 命名空間名字;例:using namespace

4、std;本命令適合放在實現(xiàn)文件(cpp文件)而非頭文件放在cpp文件時,不會影響任何其它文件。放在頭文件時,任何包含這個頭文件的文件,都將打開這個名字空間,using命令的影響范圍可能難以判定。#include namespace MyNamesint x=10;int y=2*x;using namespace std;using namespace MyNames;int main()coutxendl;coutyendl;coutx + y endl;return 0;102030命名空間的成員一個命名空間可以包含多種類型的名字。可以包含函數(shù)可以包含類命名空間可以嵌套。#include

5、using namespace std;namespace MyNamesconst int OFFSET=15;int x=10, y=20;char ch=A;int IntSum()int total=x+y+OFFSET;return(total);char CharSum()char result=ch+OFFSET;return(result);int main() cout“Namespace member values:endl; coutMyNames:x MyNames:y MyNames:chendl; coutResults of Namespace functions:endl; coutMyNames:IntSum() MyNames:CharSum()endl; return 0 ;Namespace member values:10 20 AResults of Namespace functions:45 P命名空間的別名對一個已經(jīng)定義的命名空間,可以再定義一個

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論