C++語言是計(jì)算機(jī)軟件行業(yè)中經(jīng)常使用的編程語言,隨著新語言的出現(xiàn),C++語言對(duì)于新入行的程序員來說,是比較陌生。那么,C++會(huì)被新語言取代嗎?當(dāng)然不是,C++語言目前還是很強(qiáng)大的,仍然有很多資深的軟件設(shè)計(jì)師對(duì)C++語言情有獨(dú)鐘。它到底有多強(qiáng)大呢?
C++在幾乎所有的計(jì)算環(huán)境中都非常普及:個(gè)人電腦、Unix工作站和大型計(jì)算機(jī)。如果考察一下新編程語言的發(fā)展史,就可以看出C++的這種普及率是非常高的。用以前的語言編寫的程序量非常大,這無疑會(huì)降低對(duì)新語言的接受程度。除此以外,大多數(shù)專業(yè)軟件設(shè)計(jì)師總是愿意使用他們已熟知的、使用起來得心應(yīng)手的語言,而不是轉(zhuǎn)而使用新的、不熟悉的語言,花大量的時(shí)間來研究其特性。當(dāng)然,C++是建立在C的基礎(chǔ)之上(在C++出現(xiàn)之前,許多環(huán)境都使用C語言),這對(duì)于C++的普及有很大的幫助,但是C++的流行遠(yuǎn)不只是這一個(gè)原因。C++有許多優(yōu)點(diǎn):
C++適用的應(yīng)用程序范圍極廣。C++可以用于幾乎所有的應(yīng)用程序,從字處理應(yīng)用程序到科學(xué)應(yīng)用程序,從操作系統(tǒng)組件到計(jì)算機(jī)游戲等。
C++從C中繼承了過程編程方式的高效性,并集成了面向?qū)ο缶幊谭绞降墓δ堋?/p>
C++在其標(biāo)準(zhǔn)庫中提供了大量的功能。
有許多商業(yè)C++庫支持?jǐn)?shù)量眾多的操作系統(tǒng)環(huán)境和專門的應(yīng)用程序。
因?yàn)閹缀跛械挠?jì)算機(jī)都可以使用C++編程,所以C++語言普及到幾乎所有的計(jì)算機(jī)平臺(tái)上。也就是說,把用C++編寫的程序從一臺(tái)機(jī)器遷移到另一臺(tái)機(jī)器上不需要費(fèi)什么力氣。當(dāng)然,如果這個(gè)過程真的非常簡(jiǎn)單,那么編寫在另一臺(tái)機(jī)器上運(yùn)行的程序時(shí)就需要考慮使用C++語言了。
C++的ANSI標(biāo)準(zhǔn)
標(biāo)準(zhǔn)化是把所編寫的程序從一種類型的計(jì)算機(jī)遷移到另一種類型的計(jì)算機(jī)上的基礎(chǔ)。標(biāo)準(zhǔn)的建立使語言在各種機(jī)器上的實(shí)現(xiàn)保持一致。在所有相容編譯器上都可用的一組標(biāo)準(zhǔn)功能意味著,用戶總是能確定下一步會(huì)獲得什么結(jié)果。使用ANSI標(biāo)準(zhǔn)后,C++使應(yīng)用程序可以輕松地在不同的機(jī)器之間遷移,緩解了在多個(gè)環(huán)境上運(yùn)行的應(yīng)用程序的維護(hù)問題。
當(dāng)然,還有其他問題需要考慮。如果程序是可以移植的,那么就不能把非標(biāo)準(zhǔn)庫中的特性引入代碼,還必須使程序?qū)⒃摮绦蛩褂玫拈_發(fā)機(jī)器的依賴性降到最低,否則遷移代碼就很困難。
C++的ANSI標(biāo)準(zhǔn)還有另一個(gè)優(yōu)點(diǎn):它對(duì)用C++編程所需要學(xué)習(xí)的部分進(jìn)行了標(biāo)準(zhǔn)化。這個(gè)標(biāo)準(zhǔn)將使后續(xù)的程序具有一致性,因?yàn)樗粸镃++編譯器和庫提供了一個(gè)定義參考。在編寫編譯器時(shí),該標(biāo)準(zhǔn)的存在也使編寫人員不再需要許可。
以上內(nèi)容是關(guān)于C++語言強(qiáng)大的原因的介紹,唯學(xué)網(wǎng)小編提醒,關(guān)于軟件工程資訊、學(xué)習(xí)輔導(dǎo)等相關(guān)內(nèi)容的請(qǐng)繼續(xù)關(guān)注唯學(xué)網(wǎng)。小編會(huì)第一時(shí)間為大家更新跟進(jìn)最新信息,如有任何疑問也可在線留言,小編會(huì)為您在第一時(shí)間解答!