我們已經(jīng)知道,用C 語言編寫的過程程序就是一些數(shù)據(jù)定義和函數(shù)調(diào)用。要理解這種程序的含義,程序員必須掌握函數(shù)調(diào)用和函數(shù)實現(xiàn)的本身。這就是過程程序需要中間表示的原因。中間表示容易引起混淆,因為中間表示的表述是原始的,更偏向于計算機,而不偏向于所解決的問題。 因為 C++ 向 C 語言增加了許多新概念,所以程序員很自然地認為, C + +程序中的main()會比功能相同的C 程序更復雜。但令人吃驚的是,一個寫得很好的C + +程序一般要比功能相同的C程序更簡單和容易理解。程序員只會看到一些描述問題空間對象的定義(而不是計算機的描述),發(fā)送給這些對象的消息。這些消息表示了在這個空間的活動。面向對象程序設計的優(yōu)點之一是通過閱讀,很容易理解代碼。通常,面向對象程序需要較少的代碼,因為問題中的許多部分都可以用已存在的庫代碼。 C + +能夠如此成功,部分原因是它的目標不只是為了將C語言轉變成 OOP 語言(雖然這是最初的目的),而且還為了解決當今程序員,特別是那些在C語言中已經(jīng)大量投資的程序員所面臨的許多問題。 C + +的目的是提高效率。效率取決于很多東西,而語言是為了盡可能地幫助使用者,盡可能不用武斷的規(guī)則或特殊的性能妨礙使用者。C + +成功是因為它立足于實際:盡可能地為程序員提供最大便利。
C++是一種使用非常廣泛的計算機編程語言。C++是一種靜態(tài)數(shù)據(jù)類型檢查的、支持多重編程方式的通用程序設計語言。它支持過程化程序設計、數(shù)據(jù)抽象、面向對象程序設計、泛型程序設計等多種程序設計風格。其編譯器比目前其他計算機語言的編譯技術更復雜。2011年8月12日公布最新正式標準c++11。
C++是一種使用非常廣泛的計算機編程語言。C++是一種靜態(tài)數(shù)據(jù)類型檢查的、支持多重編程方式的通用程序設計語言。它支持過程化程序設計、數(shù)據(jù)抽象、面向對象程序設計、泛型程序設計等多種程序設計風格。其編譯器比目前其他計算機語言的編譯技術更復雜。2011年8月12日公布最新正式標準c++11。
C++這個名字是Rick Mascitti于1983年中所建議的,并于1983年12月首次使用。更早以前,尚在研究階段的發(fā)展中語言曾被稱為“new C”,之后是“C with Classes”[4]。在計算機科學中,C++仍被稱為C語言的上層結構。它最后得名于C語言中的“++”操作符(其對變量的值進行遞增)。而且在共同的命名約定中,使用“+”以表示增強的程序。Stroustrup說:“這個名字象征著源自于C語言變化的自然演進”。C+是一個和C/C++無關的早期編程語言。
Rick Mascitti在1992年被非正式地問起名字的由來,他表示這是在半開玩笑中說出的。他從沒想過C++會成為這門語言的正式名字。有一個關于C++名字的笑話,當你使用后綴++時,附加只發(fā)生在運算之后(因此,它應該是++C,而不是C++,這個笑話是說時下某些程序員還在以使用C的方式使用C++,這通常被一些權威著作認為是不正確的)。