C++的簡介、起源與發(fā)展
發(fā)布時間:2023-10-27 11:05:37
1.C++簡史:
2.1 C語言編程原理:
由于C++在C語言的基礎(chǔ)上移植了新的編程理念,所以我們先回顧一下C語言所遵循的舊的理念。一般來說,計算機語言要處理兩個概念——數(shù)據(jù)和算法。數(shù)據(jù)是程序使用和處理的信息,而算法是程序使用的方法。C語言與當前最主流的語言一樣,在最初面世時也是過程性(procedural)語言,這意味著它強調(diào)的是編程的算法方面。
但隨著程序規(guī)模的擴大,早期的程序語言(Basic)都會遇到組織方面的問題。為了解決這些問題,計算機科學家開發(fā)了一種更有序的編程方法——結(jié)構(gòu)化編程。C語言具有使用這種方法的特性,另一個新原則是自頂向下設(shè)計。在C語言中,其理念是將大型程序分解成小型、便于管理的任務。C語言鼓勵程序員開發(fā)程序單元(函數(shù))來表示各個任務模塊。
2.面向?qū)ο缶幊?/span>
雖然結(jié)構(gòu)化編程的理念提高了程序的清晰度、可靠性、便于維護,但它在編寫大型程序時,仍面臨著挑戰(zhàn)。為應付這種挑戰(zhàn),OOP提供了新方法,與強調(diào)算法的過程性編程不同,OOP強調(diào)的是數(shù)據(jù)。OOP不像過程性編程那樣,試圖使問題滿足語言的過程性方法,而是試圖讓語言來滿足問題的要求。
在C++中,類是一種規(guī)范,它描述了這種新型數(shù)據(jù)格式,對象是根據(jù)這種規(guī)范構(gòu)造的特定數(shù)據(jù)結(jié)構(gòu)。通常,類規(guī)定了可使用哪些數(shù)據(jù)來表示對象以及可以對這些數(shù)據(jù)執(zhí)行哪些操作。
OOP程序設(shè)計方法首先設(shè)計類,它們準確表示了程序要處理的東西。
3.C++和泛型編程
泛型編程是C++支持的另一種編程模式。它與OOP的目標相同,即使重用代碼和抽象通用概念的技術(shù)更簡單,不過OOP強調(diào)的是編程的數(shù)據(jù)方面,而泛型編程強調(diào)的是獨立于特定數(shù)據(jù)結(jié)構(gòu)。它們的側(cè)重點不同,OOP是一個管理大型項目的工具,而泛型編程提供了執(zhí)行常見任務(如對數(shù)據(jù)排序或合并鏈表)的工具。
4.C++起源:
與C語言一樣,C++也是在貝爾實驗室誕生的,Bjarne Stroustrup于20世紀80年代在這里開發(fā)出了這種語言。Stroustrup比較關(guān)系的是讓C++更有用,而不是實施特定的編程原理和風格。名稱C++來自C語言的遞增運算符++,名稱C++表示它是C的擴充版本。
5.C++發(fā)展:
C++是一門以C為基礎(chǔ)發(fā)展而來的一門面向?qū)ο蟮母呒壋绦蛟O(shè)計語言,從1983年在貝爾實驗室創(chuàng)立開始至今,已有30多個年頭。C++從最初的C with class,經(jīng)歷了從C++98、C++ 03、C++ 11、C++ 14再到C++17多次標準化改造,功能得到了極大的豐富,已經(jīng)演變?yōu)橐婚T集面向過程、面向?qū)ο蟆⒑瘮?shù)式、泛型和元編程等多種編程范式的復雜編程語言。由于C++過于復雜,并且經(jīng)歷了長時間的發(fā)展演變,目前對于C++標準支持的較好主要有GNU C++和Visual C++,嚴格來說,目前還沒有一個完全支持ISO C++的版本。
以上為本次所有分享內(nèi)容