無論什麼語言都只有在界面化的開發工具下,才容易被推廣和流傳,那麼就是微軟公司推出的Visual C++ 6.0開發工具,是使用最廣的開發工具,歡迎大家多多學習指教。
在前面小節中已經提到,C++只是一個ISO標准,標准中規定了C++的基本語法以及這些語法對應的語義可以簡單理解為語法的含義)。要將C++真正地應用在實際的程序設計中,只有一個標准是不夠的。好在已經有很多商業公司、開源組織、基金會甚至是個人,遵照C++標准在不同的平台上進行了實現。
寫程序首先希望是程序能正確執行,其次是效率能夠被接受,再次就是易於維護。C++是一個難學易用的語言。C++提供了太多可選擇的東西,而且使用使用C++來寫程序可以有四種思考模式:基於過程、基於對象、面向對象和泛型。
我們使用一種語言來寫程序,並不意味著就是使用語言本身,換句話說,我們更多的時候是使用程序庫在寫程序。比如MFC、STL、ATL、VCL等等。其中要使用C++來寫出結構優美、性能卓越、代碼簡潔、易於維護的代碼,首推C++標准程序庫。
STL對效率做了嚴格的要求,而且使用STL寫出來的程序簡潔美觀前段時間我特意貼了一個要求對若干整數進行排序的帖子,其實目的就是用來展示STL的簡潔優雅)。一旦習慣使用泛型思維來考慮問題,我們能夠充分體會到模板帶來的美!
對於數值計算來說,C++標准程序庫可以充分滿足現代化服務和商業計算對數據、信息的即時回應的要求。
我覺得學好一門語言最重要的就是實踐。也就是多“寫”!“工程經驗之積累”對已具有一段開發時間的程序員而言,非常重要!只有在不斷的積累中,我們才能漸漸體會到C++語言中的一些背後的東西。
這裡的遵照並不是百分之百地遵照C++標准,主要原因有以下幾點:
1)歷史原因。某些編譯器在實現的時候,C++正式標准還沒有出來,或者是按照較老的標准實現的C++標准也是在更新的)。
2)平台原因。某些平台上實現標准中的某些特性比較困難,或者根本不需要這些特性。
3)出於商業目的。某些商業公司實現的時候可能會添加一些其認為可行的或者更加好的特性。
4)其他技術原因。
無論如何,現在可用的C++編譯器實現已經很豐富了,在Windows平台上的實現就有若干種,比較常用的有Visual C++ 6.0開發工具附帶的C++編譯器實現,和Borland C++ Builder附帶的C++編譯器實現。就對標准的執行程度來看,後者要好一些。
提示:Visual C++和Borland C++ Builder是Windows操作系統上常見的C++開發工具。前者是微軟公司出品的,應用廣泛。本書的主要內容就是講述如何使用Visual C++ 6.0進行常見的Windows程序設計。Visual C++ 6.0除了包含了一個C++編譯器之外,還包含了其他的一些可視化開發工具、輔助工具,以及一些C++庫等,這些都將在本書的相關章節進行介紹。
Visual C++ 6.0開發工具負責將C++源代碼編譯成匯編文件,轉換為中間文件obj文件),然後使用連接器將相關的中間文件連接在一起,生成可執行的二進制文件。其過程如下:
1)源程序經過預處理後交給編譯器。
2)如果代碼無誤,編譯器將代碼生成匯編程序,再生成若干個目標程序obj文件)。
3)鏈接器負責將目標程序進行連接,生成可執行的程序。
圖1.2詳細地描述了常見Windows應用程序開發的過程。