一種語言只有在一種界面化的開發工具下,才容易被推廣和流傳。Visual C++ 6.0就是微軟公司推出的C++開發工具,是使用最廣的開發工具。本節介紹Visual C++ 6.0工具的開發環境和開發流程。
Visual C++ 6.0開發工具簡介
在前面小節中已經提到,C++只是一個ISO標准,標准中規定了C++開發工具的基本語法以及這些語法對應的語義可以簡單理解為語法的含義)。要將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的開發過程
Visual C++ 6.0編譯器負責將C++源代碼編譯成匯編文件,轉換為中間文件obj文件),然後使用連接器將相關的中間文件連接在一起,生成可執行的二進制文件。其過程如下:
1)源程序經過預處理後交給編譯器。
2)如果代碼無誤,編譯器將代碼生成匯編程序,再生成若干個目標程序obj文件)。
3)鏈接器負責將目標程序進行連接,生成可執行的程序。
所以我覺得“接口”其實已經在面向對象裡形成了一種文化。但是作為編程界翹楚的C++卻沒有“接口”這樣東西。人的思維是強大的,例如MS的做法就是將struct當成了接口來使用。所以我覺得C++開發工具中的struct和class區別不是在於使用,不在於語法糖,而是在於思想,在於構架約定等方面。