智能網(wǎng)聯(lián)汽車(chē)計(jì)算平臺(tái)部署與測(cè)試 課件 5.1 C++的認(rèn)知_第1頁(yè)
智能網(wǎng)聯(lián)汽車(chē)計(jì)算平臺(tái)部署與測(cè)試 課件 5.1 C++的認(rèn)知_第2頁(yè)
智能網(wǎng)聯(lián)汽車(chē)計(jì)算平臺(tái)部署與測(cè)試 課件 5.1 C++的認(rèn)知_第3頁(yè)
智能網(wǎng)聯(lián)汽車(chē)計(jì)算平臺(tái)部署與測(cè)試 課件 5.1 C++的認(rèn)知_第4頁(yè)
智能網(wǎng)聯(lián)汽車(chē)計(jì)算平臺(tái)部署與測(cè)試 課件 5.1 C++的認(rèn)知_第5頁(yè)
已閱讀5頁(yè),還剩26頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

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

文檔簡(jiǎn)介

智能網(wǎng)聯(lián)汽車(chē)

計(jì)算平臺(tái)部署與測(cè)試項(xiàng)目五ROS的安裝與使用目錄01.C++的認(rèn)知02.Python的認(rèn)知03.ROS的認(rèn)知04.ROS的安裝05.ROS文件系統(tǒng)的構(gòu)建06.ROS通信系統(tǒng)的構(gòu)建01.C++的認(rèn)知面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言輸出一個(gè)表達(dá)式“1+1”的結(jié)果輸出一串漢字“北京歡迎您!”輸出一個(gè)字符串“HelloWorld!”任務(wù)描述(1)掌握C++語(yǔ)言中的專(zhuān)業(yè)術(shù)語(yǔ)、基本詞法和控制流程結(jié)構(gòu)的語(yǔ)法格式。(2)理解面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言的基本概念和特征,掌握類(lèi)、對(duì)象、構(gòu)造函數(shù)、析構(gòu)函數(shù)、封裝、繼承和多態(tài)等專(zhuān)業(yè)術(shù)語(yǔ)。(3)能熟練操作C++語(yǔ)言的開(kāi)發(fā)工具完成程序的基本功能。(4)能建立起用面向?qū)ο蟮某绦蛟O(shè)計(jì)方法解決實(shí)際問(wèn)題的編程思維。(5)具備綜合運(yùn)用C++程序設(shè)計(jì)語(yǔ)言解決實(shí)際問(wèn)題的能力。(6)具有主動(dòng)學(xué)習(xí)、獨(dú)立思考、終身學(xué)習(xí)的意識(shí)。(7)通過(guò)質(zhì)疑、討論和解疑,具備創(chuàng)新思維、創(chuàng)新個(gè)性和創(chuàng)新能力。任務(wù)目標(biāo)任務(wù)準(zhǔn)備防護(hù)裝備常規(guī)實(shí)訓(xùn)著裝01教學(xué)設(shè)備計(jì)算機(jī)平臺(tái)02教學(xué)工具Dev-C++,MicrosoftVisualStudio03一、概述(一)C++的概念C++,讀作“C加加”,是“CPlusPlus”的簡(jiǎn)稱(chēng),是一門(mén)以C語(yǔ)言為基礎(chǔ)發(fā)展而來(lái)的面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言。自1983年由BjarneStroustrup教授在貝爾實(shí)驗(yàn)室創(chuàng)立開(kāi)始至今,已經(jīng)發(fā)展了近40年。C++從最初的Cwithclass,經(jīng)歷了從C++98、C++03、C++11、C++14到C++17再到C++20等多次標(biāo)準(zhǔn)化改造,功能得到了極大的豐富,已經(jīng)演變?yōu)橐婚T(mén)集面向過(guò)程、面向?qū)ο?、函?shù)式、泛型和元編程等多種編程范式的復(fù)雜編程語(yǔ)言。它是一種靜態(tài)類(lèi)型的、編譯式的、通146用的、大小寫(xiě)敏感的、不規(guī)則的編程語(yǔ)言,綜合了高級(jí)語(yǔ)言和低級(jí)語(yǔ)言的特點(diǎn),通常被認(rèn)為是中級(jí)程序設(shè)計(jì)語(yǔ)言。一、概述階段內(nèi)容Cwithclasses類(lèi)及派生類(lèi)、公有和私有成員、類(lèi)的構(gòu)造和析構(gòu)、友元、內(nèi)聯(lián)函數(shù)、賦值運(yùn)算符重載等C++1.0添加虛函數(shù)概念,函數(shù)和運(yùn)算符重載,引用、常量等C++2.0更加完善支持面向?qū)ο?,新增保護(hù)成員、多重繼承、對(duì)象的初始化、抽象類(lèi)、靜態(tài)成員以及const成員函數(shù)C++3.0進(jìn)一步完善,引入模板,解決多重繼承產(chǎn)生的二義性問(wèn)題和相應(yīng)構(gòu)造和析構(gòu)的處理C++98C++標(biāo)準(zhǔn)第一個(gè)版本,絕大多數(shù)編譯器都支持,得到了國(guó)際標(biāo)準(zhǔn)化組織(ISO)和美國(guó)標(biāo)準(zhǔn)化協(xié)會(huì)認(rèn)可,以模板方式重寫(xiě)C++標(biāo)準(zhǔn)庫(kù),引入了STL(標(biāo)準(zhǔn)模板庫(kù))C++03C++標(biāo)準(zhǔn)第二個(gè)版本,語(yǔ)言特性無(wú)大改變,主要:修訂錯(cuò)誤、減少多異性C++05C++標(biāo)準(zhǔn)委員會(huì)發(fā)布了一份計(jì)數(shù)報(bào)告(TechnicalReport,TR1),正式更名C++0x,即:計(jì)劃在本世紀(jì)第一個(gè)10年的某個(gè)時(shí)間發(fā)布C++11增加了許多特性,使得C++更像一種新語(yǔ)言,比如:正則表達(dá)式、基于范圍for循環(huán)、auto關(guān)鍵字、新容器、列表初始化、標(biāo)準(zhǔn)線程庫(kù)等C++14對(duì)C++11的擴(kuò)展,主要是修復(fù)C++11中漏洞以及改進(jìn),比如:泛型的lambda表達(dá)式,auto的返回值類(lèi)型推導(dǎo),二進(jìn)制字面常量等C++17在C++11上做了一些小幅改進(jìn),增加了19個(gè)新特性,比如:static_assert()的文本信息可選,F(xiàn)old表達(dá)式用于可變的模板,if和switch語(yǔ)句中的初始化器等C++20自C++11以來(lái)最大的發(fā)行版,引入了許多新的特性,比如:模塊(Modules)、協(xié)程(Coroutines)、范圍(Ranges)、概念(Constraints)等重大特性,還有對(duì)已有特性的更新:比如Lambda支持模板、范圍for支持初始化等C++23制定ing(二)C++的發(fā)展簡(jiǎn)史(三)C++語(yǔ)言的主要特點(diǎn)01.與C語(yǔ)言兼容02.數(shù)據(jù)封裝和數(shù)據(jù)隱藏03.繼承和重用一、概述04.多態(tài)性C++與C語(yǔ)言完全兼容,C語(yǔ)言的絕大部分內(nèi)容可以直接用于C++的程序設(shè)計(jì),用C語(yǔ)言編寫(xiě)的程序可以不加修改地用于C++。在C++中,類(lèi)是支持?jǐn)?shù)據(jù)封裝的工具,對(duì)象則是數(shù)據(jù)封裝的實(shí)現(xiàn)。C++通過(guò)建立用戶定義類(lèi)支持?jǐn)?shù)據(jù)封裝和數(shù)據(jù)隱藏。在C++現(xiàn)有類(lèi)的基礎(chǔ)上可以聲明新類(lèi)型,這就是繼承和重用的思想。多態(tài)性形成由父類(lèi)和它們的子類(lèi)組成的一個(gè)樹(shù)型結(jié)構(gòu)。(四)C++的開(kāi)發(fā)環(huán)境由IBM開(kāi)發(fā)的免費(fèi)開(kāi)源的IDEEclipse微軟開(kāi)發(fā)的開(kāi)源代碼編輯器,適用于所有類(lèi)型的操作系統(tǒng)VisualStudioCode由Apache軟件基金會(huì)開(kāi)發(fā),被C++開(kāi)發(fā)人員認(rèn)為是最好用的IDE之一NetBeans一、概述由Jetbrains開(kāi)發(fā),是C++程序員最推薦的跨平臺(tái)IDECLion開(kāi)放源代碼的IDE,是Qt被Nokia收購(gòu)后推出的輕量級(jí)集成開(kāi)發(fā)環(huán)境QtCreator二、C++基本概念和語(yǔ)法(一)程序編譯和運(yùn)行C++和C語(yǔ)言類(lèi)似,也要經(jīng)過(guò)編譯和鏈接后才能運(yùn)行。前面所述的C++IDE,除了可以編輯C++源代碼,還可以實(shí)現(xiàn)C++的編譯、鏈接、調(diào)試和運(yùn)行。與C語(yǔ)言源代碼文件后綴統(tǒng)一為.c不同,在不同的編譯器下,C++語(yǔ)言源代碼文件的后綴名并不相同。以下是幾款主流的編譯器對(duì)應(yīng)的C++源代碼文件后綴:(1)MicrosoftVisualC++:cpp、cxx、cc(2)GCC:cpp、cxx、cc、c++、C(3)BorlandC++:cpp(4)Unix:C、cc、cxx二、C++基本概念和語(yǔ)法(二)命名空間C++使用命名空間的目的是對(duì)標(biāo)識(shí)符的名稱(chēng)進(jìn)行本地化,以避免命名沖突或名字污染。namespaceA{ File*fp=NULL;}namespaceB{ File*fp=NULL;}使用變量、函數(shù)時(shí)要指明它們所在的命名空間。以上面的fp變量為例,可以這樣使用:A::fp=fopen("one.txt","r");B::fp=fopen("two.txt","rb+");二、C++基本概念和語(yǔ)法(三)頭文件早期的C++還不完善,不支持命名空間,沒(méi)有自己的編譯器,是在使用C語(yǔ)言的庫(kù),stdio.h、stdlib.h、string.h等頭文件依然有效;此外C++也開(kāi)發(fā)了一些新的庫(kù),增加了自己的頭文件,例如:和C語(yǔ)言一樣,C++頭文件仍然以.h為后綴,它們所包含的類(lèi)、函數(shù)、宏等都是全局范圍的。后來(lái)C++引入了命名空間的概念,重新編寫(xiě)庫(kù),將類(lèi)、函數(shù)、宏等都統(tǒng)一納入一個(gè)命名空間,這個(gè)命名空間的名字就是std。iostream.h:用于控制臺(tái)輸入輸出頭文件。fstream.h:用于文件操作的頭文件。complex.h:用于復(fù)數(shù)計(jì)算的頭文件。為了避免頭文件重名,新版C++庫(kù)也對(duì)頭文件的命名做了調(diào)整,去掉了后綴.h:iostream.h→iostream,fstream.h→fstream對(duì)于原來(lái)C語(yǔ)言的頭文件,也采用同樣的方法,但在每個(gè)名字前還要添加一個(gè)c字母:stdio.h→cstdio,stdlib.h→cstdlib二、C++基本概念和語(yǔ)法(四)數(shù)據(jù)類(lèi)型和變量bool布爾型,占1個(gè)字節(jié)內(nèi)存,取值為0或1。01char字符型,占1個(gè)字節(jié)內(nèi)存,取值范圍為0到255或-128到127,因編譯器而定。02int整型,占4個(gè)字節(jié),取值范圍為-2147483648到2147483647。03float單精度型,占4個(gè)字節(jié),所能表示范圍為(1.17549e-038)到(3.40282e+038)。04double雙精度類(lèi)型,占8個(gè)字節(jié),所能表示范圍為(2.22507e-308)到(1.79769e+308)。05longdouble長(zhǎng)雙精度類(lèi)型,占16個(gè)字節(jié),可提供18-19位有效數(shù)字。06wchar_t寬字符類(lèi)型,占2或4個(gè)字節(jié)。07二、C++基本概念和語(yǔ)法(四)數(shù)據(jù)類(lèi)型和變量變量是程序可操作的存儲(chǔ)區(qū)的名稱(chēng)。C++變量的名稱(chēng)可以由字母(大小寫(xiě)不同)、數(shù)字和下劃線字符組成,必須以字母或下劃線開(kāi)頭。C++是強(qiáng)類(lèi)型語(yǔ)言,所有的變量在可以使用前,必須要進(jìn)行定義。變量定義就是告訴編譯器在何處創(chuàng)建變量的存儲(chǔ),以及如何創(chuàng)建變量的存儲(chǔ)。在語(yǔ)法上,變量定義需要指定一個(gè)數(shù)據(jù)類(lèi)型,并包含了該類(lèi)型的一個(gè)或多個(gè)變量的列表,如: inti,j,k;該語(yǔ)句聲明并定義了變量i、j和k,指示編譯器創(chuàng)建類(lèi)型為int,名為i、j、k的變量。變量可以在聲明的時(shí)候被初始化(指定一個(gè)初始值)。初始化器由一個(gè)等號(hào),后跟一個(gè)常量表達(dá)式組成:intd=3,k=5;如果變量在定義式未初始化,則帶有靜態(tài)存儲(chǔ)持續(xù)時(shí)間的變量會(huì)被隱式初始化為NULL(所有字節(jié)的值都是0),其他所有變量的初始值是未定義的。二、C++基本概念和語(yǔ)法(五)運(yùn)算符(1)算術(shù)運(yùn)算符:+(加)、-(減)、*(乘)、/(除)、%(模)、++(自增)、--(自減)。(2)關(guān)系運(yùn)算符:==(相等)、!=(不等)、>(大于)、<(小于)、>=(大等于)、<=(小等于)(3)邏輯運(yùn)算符:&&(邏輯與)、||(邏輯或)、!(邏輯非)。(4)位運(yùn)算符:&(按位與)、|(按位或)、^(按位異或)、~(按位取反)、<<(二進(jìn)制左移)、>>(二進(jìn)制右移)。(5)賦值運(yùn)算符:=(簡(jiǎn)單賦值)、+=(加且賦值)、-=(減且賦值)、*=(乘且賦值)、/=(除且賦值)、%/(模且賦值)、<<=(左移且賦值)、>>=(右移且賦值)、&=(按位與且賦值)、|=(按位或且賦值)、^=(按位異或且賦值)。(6)雜項(xiàng)運(yùn)算符:sizeof(計(jì)算變量所占內(nèi)存大小)、Condition?X:Y(條件運(yùn)算符,如果Condition為真則值為X,否則為Y)、->(成員運(yùn)算符)、Cast(強(qiáng)制轉(zhuǎn)換運(yùn)算符)、&(指針運(yùn)算符,返回變量在內(nèi)存中的地址)、*(指針運(yùn)算符,返回指針變量的值)。二、C++基本概念和語(yǔ)法(六)控制語(yǔ)句條件語(yǔ)句if語(yǔ)句if…else語(yǔ)句switch語(yǔ)句循環(huán)語(yǔ)句for循環(huán)while循環(huán)do…while循環(huán)二、C++基本概念和語(yǔ)法(六)控制語(yǔ)句條件語(yǔ)句if語(yǔ)句if…else語(yǔ)句switch語(yǔ)句if語(yǔ)句if(boolean_expression){//如果boolea_expression為true要執(zhí)行的語(yǔ)句}if…else語(yǔ)句if(boolean_expression){//如果boolea_expression為true時(shí)要執(zhí)行的語(yǔ)句}else{//如果boolea_expression為false時(shí)要執(zhí)行的語(yǔ)句}if…else語(yǔ)句還可以寫(xiě)成if…elseif…elseSwitch語(yǔ)句switch(expression){casevalue1://expression值為value1時(shí)要執(zhí)行的語(yǔ)句break;//可選casevalue2://expression值為value2時(shí)要執(zhí)行的語(yǔ)句break;//可選default://可選//缺省情況下要執(zhí)行的語(yǔ)句(即expression值都不等于各case值時(shí))}循環(huán)語(yǔ)句for循環(huán)while循環(huán)do…while循環(huán)二、C++基本概念和語(yǔ)法(六)控制語(yǔ)句for循環(huán)for(init;condition;increment){//要循環(huán)執(zhí)行的語(yǔ)句,即循環(huán)主體}while循環(huán)while(condition){//要循環(huán)執(zhí)行的語(yǔ)句,即循環(huán)主體}do…while循環(huán)do{//要循環(huán)執(zhí)行的語(yǔ)句,即循環(huán)主體}二、C++基本概念和語(yǔ)法(七)輸入輸出C++的輸入/輸出發(fā)生在流中,流是字節(jié)序列。輸入操作:字節(jié)流是從設(shè)備(如鍵盤(pán)、磁盤(pán)驅(qū)動(dòng)器、網(wǎng)絡(luò)連接等)流向內(nèi)存輸出操作:字節(jié)流是從內(nèi)存流向設(shè)備(如顯示屏、打印機(jī)、磁盤(pán)驅(qū)動(dòng)器、網(wǎng)絡(luò)連接等)C++提供了包括輸入、輸出、錯(cuò)誤、日志、文件等在內(nèi)的輸入/輸出流,涉及到以下幾個(gè)主要的頭文件:<iostream><iomanip><fstream>01標(biāo)準(zhǔn)輸出流coutcout對(duì)象“連接”到標(biāo)準(zhǔn)輸出設(shè)備(通常是顯示屏),與流插入運(yùn)算符<<結(jié)合使用。02標(biāo)準(zhǔn)輸入流cincin對(duì)象附屬到標(biāo)準(zhǔn)輸入設(shè)備(通常是鍵盤(pán)),與流提取運(yùn)算符>>結(jié)合使用。03標(biāo)準(zhǔn)錯(cuò)誤流cerrcerr對(duì)象附屬到標(biāo)準(zhǔn)輸出設(shè)備(通常也是顯示屏),但是cerr對(duì)象是非緩沖的,且每個(gè)流插入到cerr都會(huì)立即輸出。04標(biāo)準(zhǔn)日志流clogclog對(duì)象附屬到標(biāo)準(zhǔn)輸出設(shè)備(通常也是顯示屏),與cerr不同,clog對(duì)象是緩沖的。三、類(lèi)和對(duì)象類(lèi)是C++的核心特性,它包含了數(shù)據(jù)表示法和用于處理數(shù)據(jù)的方法。類(lèi)中的數(shù)據(jù)、方法和函數(shù)稱(chēng)為類(lèi)的成員。類(lèi)是創(chuàng)建對(duì)象的模板,一個(gè)類(lèi)可以創(chuàng)建多個(gè)對(duì)象,每個(gè)對(duì)象都是類(lèi)類(lèi)型的一個(gè)變量。創(chuàng)建對(duì)象的過(guò)程也叫類(lèi)的實(shí)例化。每個(gè)對(duì)象都是類(lèi)的一個(gè)具體實(shí)例(Instance),擁有類(lèi)的成員變量和成員函數(shù)。與結(jié)構(gòu)體一樣,類(lèi)只是一種復(fù)雜數(shù)據(jù)類(lèi)型的聲明,不占用內(nèi)存空間。而對(duì)象是類(lèi)這種數(shù)據(jù)類(lèi)型的一個(gè)變量,或者說(shuō)是通過(guò)類(lèi)這種數(shù)據(jù)類(lèi)型創(chuàng)建出來(lái)的一份真實(shí)的數(shù)據(jù),所以占用內(nèi)存空間。三、類(lèi)和對(duì)象創(chuàng)建一個(gè)Student類(lèi):classStudent{ public: //成員變量 char*name; intage; floatscore; //成員函數(shù) voidstudentInfo(){ cout<<name<<"的年齡是"<<age<<",成績(jī)是"<<score<<endl; }};有了Student類(lèi)后,就可以通過(guò)它來(lái)創(chuàng)建對(duì)象了,如:StudentzhangSan;創(chuàng)建對(duì)象以后,可以使用點(diǎn)號(hào).來(lái)訪問(wèn)成員變量和成員函數(shù),這和通過(guò)結(jié)構(gòu)體變量來(lái)訪問(wèn)它的成員相類(lèi)似,如:zhangS=“張三”;zhangSan.age=16;zhangSan.score=95;zhangSan.studentInfo();三、類(lèi)和對(duì)象類(lèi)和對(duì)象的其它關(guān)鍵概念如下:02構(gòu)造函數(shù)和析構(gòu)函數(shù)03友元函數(shù)/類(lèi)01訪問(wèn)修飾符05this指針06靜態(tài)成員04內(nèi)聯(lián)函數(shù)四、繼承和派生繼承(Inheritance)是類(lèi)與類(lèi)之間的關(guān)系,與現(xiàn)實(shí)世界中的繼承類(lèi)似。繼承可以理解為一個(gè)類(lèi)從另一個(gè)類(lèi)獲取成員變量和成員函數(shù)的過(guò)程。派生(Derive)和繼承是一個(gè)概念,只是站的角度不同。被繼承的類(lèi)稱(chēng)為父類(lèi)或基類(lèi),繼承的類(lèi)稱(chēng)為子類(lèi)或派生類(lèi)。以下是兩種典型的使用繼承的場(chǎng)景:當(dāng)創(chuàng)建的新類(lèi)與現(xiàn)有的類(lèi)相似,只是多出若干成員變量或成員函數(shù)時(shí),可以使用繼承,這樣不但會(huì)減少代碼量,而且新類(lèi)會(huì)擁有基類(lèi)的所有功能。當(dāng)需要?jiǎng)?chuàng)建多個(gè)類(lèi),并且這些類(lèi)之間擁有很多相似的成員變量或成員函數(shù)時(shí),也可以使用繼承。此時(shí),可以將這些類(lèi)的共同成員提取出來(lái),定義為基類(lèi),然后從基類(lèi)繼承,既可以節(jié)省代碼,也方便后續(xù)修改成員。四、繼承和派生//基類(lèi)PeopleclassPeople{ public: voidsetname(char*name); voidsetage(intage); char*getname(); intgetage(); private: char*m_name; intm_age;};//派生類(lèi)StudentclassStudent:publicPeople{ public: voidsetscore(floatscore); floatgetscore(); private: floatm_score;};可以看到,類(lèi)繼承的語(yǔ)法為:class子類(lèi)名:[繼承方式]父類(lèi)名{ //子類(lèi)新添加的成員}其中,繼承方式包括public(公有的)、private(私有的)和protected(受保護(hù)的),該項(xiàng)是可選的,如果不寫(xiě),那么默認(rèn)為private。五、多態(tài)和虛函數(shù)“多態(tài)(polymorphism)”指的是同一名字的事物可以完成不同的功能。多態(tài)可以分為編譯時(shí)的多態(tài)和運(yùn)行時(shí)的多態(tài)。前者主要是指函數(shù)的重載(包括運(yùn)算符的重載)、對(duì)重載函數(shù)的調(diào)用,在編譯時(shí)就能根據(jù)實(shí)參確定應(yīng)該調(diào)用哪個(gè)函數(shù),因此叫編譯時(shí)的多態(tài);而后者則和繼承、虛函數(shù)等概念有關(guān)。C++的多態(tài)意味著調(diào)用成員函數(shù)時(shí),會(huì)根據(jù)調(diào)用函數(shù)的對(duì)象的類(lèi)型來(lái)執(zhí)行不同的函數(shù)。為了實(shí)現(xiàn)這個(gè)目的,C++引入了“虛函數(shù)”的概念。虛函數(shù)的定義非常簡(jiǎn)單,只需要在函數(shù)聲明前面增加virtual關(guān)鍵字,如:virtualvoiddisplay();C++中虛函數(shù)的唯一用處就是構(gòu)成多態(tài)。有了虛函數(shù),基類(lèi)指針指向基類(lèi)對(duì)象時(shí)就使用基類(lèi)的成員(包括成員函數(shù)和成員變量),指向派生類(lèi)對(duì)象時(shí)就使用派生類(lèi)的成員。換句話說(shuō),基類(lèi)指針可以按照基類(lèi)的方式來(lái)做事,也可以按照派生類(lèi)的方式來(lái)做事,它有多種形態(tài),或者說(shuō)有多種表現(xiàn)方式,這就是多態(tài)。六、異常處理C++的異常是指在程序運(yùn)行時(shí)發(fā)生的特殊情況或錯(cuò)誤,比如嘗試除以零的操作。異常提供了一種轉(zhuǎn)移程序控制權(quán)的方式。C++異常處理涉及到三個(gè)關(guān)鍵字:try、catch、throw。throw:當(dāng)問(wèn)題出現(xiàn)時(shí),程序會(huì)拋出一個(gè)異常。catch:用于捕獲異常,在想要處理問(wèn)題的地方,通過(guò)異常處理程序捕獲異常。try:try塊中的代碼標(biāo)識(shí)將被激活的特定異常。它后面通常跟著一個(gè)或多個(gè)catch塊。六、異常處理以下是C++異常處理的示例程序:try{ //保護(hù)代碼}catch(ExceptionNamee1){ //catch塊}catch(ExceptionNamee2){ //catch塊}catch(ExceptionNameeN

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論