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