玩轉(zhuǎn)C++語言的幾種方法
對***次接觸到C++語言的技術(shù)開發(fā)人員來說,了解C++語言的概念是非常重要的,那么就先說一下什么是C++語言,所謂C++語言:它是一種使用非常廣泛的計(jì)算機(jī)編程語言。
所以撇開我個(gè)人對C++的偏愛,我想為你樹立起學(xué)習(xí)C++的信心和興趣。當(dāng)初我對自己學(xué)習(xí)C++的***個(gè)忠告就是:不能半途而廢!起初是興趣驅(qū)動,后來則是生計(jì)所需,***還是回歸到了興趣。
畢竟我從中得到了樂趣,這就足夠了。在學(xué)一個(gè)新東西前,解決動機(jī)問題很重要。就如同殺人一樣,如果只是突然興起,那么等嘗試了以后,是沒有成就感的。革命先烈們?yōu)槲覀冏鞒隽撕芎玫陌駱樱退阄覀冊趯W(xué)習(xí)C++的道路上遇到了太多困惑和痛苦,但是我們畢竟為自己的信念做了努力,我們知道自己在做什么,知道自己在追求什么。
C++是一門廣泛用于工業(yè)軟件研發(fā)的大型語言。具有很高的復(fù)雜性和解決問題的能力。C++不僅在開發(fā)上***價(jià)值,同時(shí)在學(xué)術(shù)界也就有很高的價(jià)值。有關(guān)C++的文章應(yīng)該可以用浩如煙海來形容了吧。
C++的***經(jīng)典書籍也是數(shù)不勝數(shù)。然而,目前開發(fā)語言是如此地繁榮,就連微軟也在推出了新的開發(fā)語言C#。一個(gè)不可否認(rèn)的現(xiàn)實(shí)是,在低階程序設(shè)計(jì)領(lǐng)域,C++擠壓著C同時(shí)也在承受著C的強(qiáng)烈反彈,前段時(shí)間看了據(jù)說是微軟操作系統(tǒng)源代碼的東東,其中很多還是C語言。而在高階程序設(shè)計(jì)領(lǐng)域,Java和C#正在不斷蠶食著C++的地盤。
也許Java和C#的狂潮終將迫使C++回歸本位— 回到它有著根本性優(yōu)勢的開發(fā)領(lǐng)域:低級系統(tǒng)程序設(shè)計(jì)、高級大規(guī)模高性能應(yīng)用設(shè)計(jì)、嵌入式程序設(shè)計(jì)、通用程序設(shè)計(jì)以及數(shù)值科學(xué)計(jì)算等。
果真如此,我認(rèn)為這未嘗不是一件好事。電力系統(tǒng)軟件所要求的高性能和大規(guī)模數(shù)值計(jì)算正是C++所擅長的。就我所接觸的南瑞和魯能,很多涉及到電力系統(tǒng)計(jì)算的軟件如PAS等,都是用C++來開發(fā)的。
在電力系統(tǒng)軟件開發(fā)這塊陣地,C++大有用武之地。C++吸引如此之多的智力投入,以至于這個(gè)領(lǐng)域的優(yōu)秀作品,包括重量級的軟件產(chǎn)品、程序庫以及書籍等,數(shù)不勝數(shù)。在C++之父Bjarne Stroustrup的個(gè)人主頁上。
有一頁列出了一些(全部或大部分)使用C++編寫的系統(tǒng)、應(yīng)用程序和庫。對于數(shù)值計(jì)算來說,C++標(biāo)準(zhǔn)程序庫可以充分滿足現(xiàn)代化服務(wù)和商業(yè)計(jì)算對數(shù)據(jù)、信息的即時(shí)回應(yīng)的要求。
我覺得學(xué)好一門語言最重要的就是實(shí)踐。也就是多“寫”!“工程經(jīng)驗(yàn)之積累”對已具有一段開發(fā)時(shí)間的程序員而言,非常重要!只有在不斷的積累中,我們才能漸漸體會到C++語言中的一些背后的東西。
對于這點(diǎn),沒有大量程序代碼寫作經(jīng)驗(yàn)的菜鳥,也可以借助《Effective C++》先攢一些經(jīng)驗(yàn)值。《Effective C++》是一本好書!。Meyers的書絕對值得一讀,Meyers可以說當(dāng)今C++社群中數(shù)一數(shù)二的技術(shù)專家。
以下文字應(yīng)該是去年所涂鴉而成,主要是關(guān)于動態(tài)內(nèi)存分配的,在這里將其重新看了看,覺得還是寫得太淺薄了。因?yàn)閮?nèi)存是程序運(yùn)行的“運(yùn)動場”,對場地的了解程度會直接影響到我們程序運(yùn)行的流暢度和穩(wěn)定性。
他們只是在完成工作而已。但是作為一個(gè)真正有上進(jìn)心的開發(fā)人員,我們應(yīng)該使用更優(yōu)雅和高效的編程技術(shù),這才是我們逐漸變成編程“大?!钡暮昧?xí)慣。老是停留在原地,很容易被淘汰的。
在軟件開發(fā)這個(gè)行當(dāng),尤其如此。無論是對學(xué)生,還是一線開發(fā)人員,我覺得都不應(yīng)該產(chǎn)生“書讀夠了”的感嘆!我有時(shí)候喜歡將以前看過的書翻出來再看,每次總能體會到一些新東西。
有關(guān)C++語言的書籍更是如此,而且我覺得我所起的題目不是很好。為什么?因?yàn)槲矣X得學(xué)習(xí)語言還只是新手跨入軟件開發(fā)“地獄”的***步,單單學(xué)習(xí)語言本身是遠(yuǎn)遠(yuǎn)不夠的。
還要學(xué)習(xí)相關(guān)的程序庫(C++語言當(dāng)然***是先學(xué)習(xí)C++標(biāo)準(zhǔn)程序庫)、相關(guān)的平臺技術(shù)(如。NET),說得更遠(yuǎn)一點(diǎn),還要鍛煉對目標(biāo)問題的分析、歸納能力等等。工作之前,技術(shù)路線自己作主,工作之后,絕大多數(shù)程序員將被公司技術(shù)路線左右。
所以,趁現(xiàn)在還有時(shí)間,可以學(xué)一些自己感興趣的。如果想搞軟件開發(fā),特別是電力系統(tǒng)軟件的開發(fā),學(xué)好C++不會令我們失望。當(dāng)我們進(jìn)入C++的前門,然后經(jīng)過一段黑暗之路,再從后門出來到達(dá)光明頂后,我們會體味到“一覽眾山小”的感覺。
【編輯推薦】




















