1. 程式人生 > >C++語言學習(一)——C++簡介

C++語言學習(一)——C++簡介

產品 泛型 alt 科學計算 內容 實現 .com 運算符 ces

C++語言學習(一)——C++簡介

一、C++簡介

C 語言作是結構化和模塊化的語言,適合處理較小規模的程序。對於復雜的問題,規模較大的程序,需要高度的抽象和建模時,C語言並不合適。為了解決軟件危機, 20世紀80年代, 計算機界提出了OOP(object oriented programming)思想,支持面向對象的程序設計語言應運而生。Smalltalk 就是當時問世的一種面向對象的語言。在實踐工作中,由於C語言的廣泛使用,在C語言的基礎上根據面向對象的思想發展了C語言,形成了C with class (帶類的C語言)。
1982年,美國AT&T公司貝爾實驗室的Bjarne Stroustrup博士在C語言的基礎上引入並擴充了面向對象的概念,發明了一種新的程序語言。為了表達該語言與C語言的淵源關系,命名為C++,而Bjarne Stroustrup博士被尊稱為C++語言之父。

C++是C語言的加強,是以C語言為基礎,並完全兼容C語言的特性。
計算機語言發展的樹形結構:
技術分享圖片

二、C++的應用領域

C++語言主要用於以下領域:
A、系統層軟件開發
B、服務器程序開發
C、流戲,網絡,分布式,雲計算
D、科學計算
現代軟件產品架構圖:
技術分享圖片

三、C++語言的內容

C++語言是在C語言基礎上擴展發展而來,完全兼容C語言。在C語言基礎上,C++語言主要包括三大部分:C++對C語言基礎語法的擴展,面向對象支持(繼承,封裝,多態),STL等。
技術分享圖片

四、C++對C語言的增強

C語言是一個結構化語言,重點在於算法與數據結構。C程序的設計首要考慮的是如何通過一個過程,對輸入(或環境條件)進行運算處理得到輸出(或實現過程(事物)控制)。C++首要考慮的是如何構造一個對象模型,讓構造的模型能夠契合與之對應的問題域,通過獲取對象的狀態信息得到輸出或實現過程(事物)控制。所以C語言和C++的最大區別在於解決問題的思想不一樣,C語言是面向過程的語言,C++是面向對象的語言。

C++對C的增強表現在六個方面:
(1) 類型檢查更為嚴格。
(2) 增加了面向對象的機制。
(3) 增加了泛型編程的機制(Template)。
(4) 增加了異常處理。
(5) 增加了運算符重載。
(6) 增加了標準模板庫(STL)。

C++語言學習(一)——C++簡介