C++語言真的那么難學嗎?
對***次接觸到C++語言的用戶和學者來說,了解C++語言的概念是非常重要的,那么就先說一下什么是C++語言,所謂C++語言:是一種使用非常廣泛的計算機編程語言。
所以撇開我個人對C++的偏愛,我想為你樹立起學習C++的信心和興趣。當初我對自己學習C++的***個忠告就是:不能半途而廢!起初是興趣驅(qū)動,后來則是生計所需,***還是回歸到了興趣。
畢竟我從中得到了樂趣,這就足夠了。在學一個新東西前,解決動機問題很重要。就如同殺人一樣,如果只是突然興起,那么等嘗試了以后,是沒有成就感的。革命先烈們?yōu)槲覀冏鞒隽撕芎玫陌駱?,就算我們在學習C++的道路上遇到了太多困惑和痛苦,但是我們畢竟為自己的信念做了努力,我們知道自己在做什么,知道自己在追求什么。
C++是一門廣泛用于工業(yè)軟件研發(fā)的大型語言。具有很高的復(fù)雜性和解決問題的能力。C++不僅在開發(fā)上***價值,同時在學術(shù)界也就有很高的價值。有關(guān)C++的文章應(yīng)該可以用浩如煙海來形容了吧。
C++的***經(jīng)典書籍也是數(shù)不勝數(shù)。然而,目前開發(fā)語言是如此地繁榮,就連微軟也在推出了新的開發(fā)語言C#。一個不可否認的現(xiàn)實是,在低階程序設(shè)計領(lǐng)域,C++擠壓著C同時也在承受著C的強烈反彈,前段時間看了據(jù)說是微軟操作系統(tǒng)源代碼的東東,其中很多還是C語言。而在高階程序設(shè)計領(lǐng)域,Java和C#正在不斷蠶食著C++的地盤。
也許Java和C#的狂潮終將迫使C++回歸本位— 回到它有著根本性優(yōu)勢的開發(fā)領(lǐng)域:低級系統(tǒng)程序設(shè)計、高級大規(guī)模高性能應(yīng)用設(shè)計、嵌入式程序設(shè)計、通用程序設(shè)計以及數(shù)值科學計算等。果真如此,我認為這未嘗不是一件好事。電力系統(tǒng)軟件所要求的高性能和大規(guī)模數(shù)值計算正是C++所擅長的。就我所接觸的南瑞和魯能,很多涉及到電力系統(tǒng)計算的軟件如PAS等,都是用C++來開發(fā)的。
在電力系統(tǒng)軟件開發(fā)這塊陣地,C++語言大有用武之地。C++吸引如此之多的智力投入,以至于這個領(lǐng)域的優(yōu)秀作品,包括重量級的軟件產(chǎn)品、程序庫以及書籍等,數(shù)不勝數(shù)。在C++之父Bjarne Stroustrup的個人主頁上,有一頁列出了一些(全部或大部分)使用C++編寫的系統(tǒng)、應(yīng)用程序和庫。
以下文字應(yīng)該是去年所涂鴉而成,主要是關(guān)于動態(tài)內(nèi)存分配的,在這里將其重新看了看,覺得還是寫得太淺薄了。因為內(nèi)存是程序運行的“運動場”,對場地的了解程度會直接影響到我們程序運行的流暢度和穩(wěn)定性。
寫程序首先希望是程序能正確執(zhí)行,其次是效率能夠被接受,再次就是易于維護。C++語言是一個難學易用的語言。C++提供了太多可選擇的東西,而且使用使用C++來寫程序可以有四種思考模式:基于過程、基于對象、面向?qū)ο蠛头盒汀?/P>
我們使用一種語言來寫程序,并不意味著就是使用語言本身,換句話說,我們更多的時候是使用程序庫在寫程序。比如MFC、STL、ATL、VCL等等。其中要使用C++來寫出結(jié)構(gòu)優(yōu)美、性能卓越、代碼簡潔、易于維護的代碼,首推C++標準程序庫。
STL對效率做了嚴格的要求,而且使用STL寫出來的程序簡潔美觀(前段時間我特意貼了一個要求對若干整數(shù)進行排序的帖子,其實目的就是用來展示STL的簡潔優(yōu)雅)。一旦習慣使用泛型思維來考慮問題,我們能夠充分體會到模板帶來的美!
【編輯推薦】