回覆列表
  • 1 # 職業規劃黃老師

    隨著計算機軟硬體技術的發展,計算機應用規模不斷提高,在軟體開發語言和工具方面不斷地推陳出新,新語言、新工具層出不窮。目前,國內許多高校,無論是計算機專業還是非計算機專業,都開設了C++語言程式設計課程,並且將它作為一門專業必修課程。

    C++是C的擴充版本。C++對C的擴充是由Bjarne Stroustrup於1980年在美國紐澤西州瑪瑞惠爾的貝爾實驗室提出來的,起初,他把這種語言稱為“帶類的C”,到1983年才改名為C++。

    在計算機剛發明時,人們採用打孔機直接進行機器指令程式設計,當程式長達幾百條指令時,採用這種方法就很困難了。後來人們設計了用符號表示機器指令的組合語言,從而能夠處理更大更復雜的程式。到了20世紀60年代出現了結構化程式設計方法(C語言就採用這種方法),這使得人們能夠容易編寫較為複雜的程式。但是,一旦程式設計達到一定的程度,即使結構化程式設計方法也變得無法控制,其複雜性超出了人的管理限度。例如,一旦C程式程式碼達到了25?000行至100?000行,系統就變得十分複雜,程式設計師很難控制,而設計C++語言的目的就是為了解決這個問題,其本質就是讓程式設計師理解和管理更大、更復雜的程式。因此,採用支援面向物件的C++語言進行程式設計是時代發展的需要。

    C++吸收了C和Simula67(一個古老的計算機語言)的精髓,它具有C所無法比擬的優越性。C++在維持C原來特長(如效率高和程式靈活)的基礎上,借鑑了Simula67的面向物件思想,將這兩種程式設計語言的優點相結合。C++的程式結構清晰、易於擴充套件、易於維護同時又不失效率。目前,C++的應用已超出了當初設計其的目的,被成功地應用到資料庫、資料通訊等系統,併成功地構造了許多高效能的系統軟體。C++與C相比,具有三個重要的特徵,從而使其優越於C。

    第一個特徵是支援抽象資料型別(Abstract Data Type,ADT),在C++中ADT表現為類,是對物件的抽象,而物件是資料和操作該資料程式碼的封裝體,它提供了對程式碼和資料的有效保護,可防止程式其他不相關的部分偶然或錯誤地使用物件的私有部分,這是C所無法實現的。

    第二個特徵是多型性,即一個介面,多重演算法。C++既支援早期聯編又支援滯後聯編,而C僅支援前者。

    最後一個特徵是繼承性。繼承性一方面保證了程式碼複用,確保了軟體的質量;另一方面也支援分類的概念,從而使物件成為一般情況下的具體例項。

    這三個特性,我們將在後面的章節給予詳細的講解。

    C++對C基本上完全相容,很多用C寫的應用程式都可以在C++環境中使用,因此C++不是一個純粹的面向物件程式設計語言,它即支援面向物件的程式設計方法,又支援面向過程的程式設計方法。

    目前許多系統軟體,如作業系統,資料庫管理系統(DBMS)等都採用C++編寫,所以從事有關軟體開發、自動控制和計算機應用的人員,不掌握C++簡直寸步難行。一句話:掌握C++程式設計已成為許多專業學生的必然選擇。

    C++有很多版本,國內比較流行的是微軟公司推出的Visual C++,本教材採用的是Microsoft Visual Studio 2010,簡稱VS 2010。

  • 中秋節和大豐收的關聯?
  • 為了鄰里和諧相處我們能做哪些力所能及的事情?