C語言誕生于1972年,是一門面向過程的編程語言,廣泛應用于底層開發。C語言并沒有在語法上直接支持面向對象。我們都知道,面向對象開發更適合大型軟件,面向對象編程具有以下優點:
1、易維護
采用面向對象思回想設計的結構答,可讀性高,由于繼承的存在,即使改變需求,那么維護也只是在局部模塊,所以維護起來是非常方便和較低成本的。
2、質量高
在設計時,可重用現有的,在以前的項目的領域中已被測試過的類使系統滿足業務需求并具有較高的質量。
3、效率高
在軟件開發時,根據設計的需要對現實世界的事物進行抽象,產生類。使用這樣的方法解決問題,接近于日常生活和自然的思考方式,勢必提高軟件開發的效率和質量。
4、易擴展
由于繼承、封裝、多態的特性,自然設計出高內聚、低耦合的系統結構,使得系統更靈活、更容易擴展,而且成本較低。
C++就是支持面向對象編程的語言。也許有人會說,JAVA和Python等語言也支持面向對象,并且純面向對象,那不是更好嗎?這就是C++另一個優勢,C++更全面:它上可實現系統程序,應用UI,下可編寫裸機程序,驅動硬件。它更大的優勢是在面向對象的高級語言中性能最好,速度最快。因為它直接編譯成處理器指令,在處理器上運行。而JAVA在JVM(JAVA虛擬機)中運行,當然要犧牲性能。Python和Go等高級語言又是解釋自行的,速度性能也會下降。所以很多應用軟件 ,網絡游戲等,對性能要求高的大型軟件使用C++編寫。
如果說C語言的優勢是指針,那么C++的優勢是不僅支持指針, 而且還有性能和類層次結構的設計。C++非常嚴謹、精確和數理化,標準定義很細致。語言的語法思路層次分明、相呼應;語法結構是顯式的,明確的。
當然,這只是C++的一部分優勢,在運用過程中,我們會逐漸發現C++語言之美。