国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【零基礎(chǔ)學(xué)習(xí)C++】歡迎來到C++的世界

這篇具有很好參考價值的文章主要介紹了【零基礎(chǔ)學(xué)習(xí)C++】歡迎來到C++的世界。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

個人主頁:【??個人主頁】
系列專欄:【??系列專欄】



前言

C++是一種計算機(jī)高級程序設(shè)計語言, 由C語言擴(kuò)展升級而產(chǎn)生 , 最早于1979年由本賈尼·斯特勞斯特盧普在AT&T貝爾工作室研發(fā)。

C++既可以進(jìn)行C語言的過程化程序設(shè)計,又可以進(jìn)行以抽象數(shù)據(jù)類型為特點的基于對象的程序設(shè)計,還可以進(jìn)行以繼承和多態(tài)為特點的面向?qū)ο蟮某绦蛟O(shè)計。C++擅長面向?qū)ο蟪绦蛟O(shè)計的同時,還可以進(jìn)行基于過程的程序設(shè)計。
C++擁有計算機(jī)運行的實用性特征,同時還致力于提高大規(guī)模程序的編程質(zhì)量與程序設(shè)計語言的問題描述能力。


C++(The C++ Programming Language/c plus plus)

發(fā)展歷程

世界上第一種計算機(jī)高級語言是誕生于1954年的FORTRAN語言。之后出現(xiàn)了多種計算機(jī)高級語言。1970年,AT&T的Bell實驗室的D.Ritchie和K.Thompson共同發(fā)明了C語言。研制C語言的初衷是用它編寫UNIX系統(tǒng)程序,因此,它實際上是UNIX的"副產(chǎn)品"。它充分結(jié)合了匯編語言和高級語言的優(yōu)點,高效而靈活,又容易移植。
1971年,瑞士聯(lián)邦技術(shù)學(xué)院N.Wirth教授發(fā)明了Pascal語言。Pascal語言語法嚴(yán)謹(jǐn),層次分明,程序易寫,具有很強(qiáng)的可讀性,是第一個結(jié)構(gòu)化的編程語言。
20世紀(jì)70年代中期,Bjarne Stroustrup在劍橋大學(xué)計算機(jī)中心工作。他使用過Simula和ALGOL,接觸過C。他對Simula的類體系感受頗深,對ALGOL的結(jié)構(gòu)也很有研究,深知運行效率的意義。既要編程簡單、正確可靠,又要運行高效、可移植,是Bjarne Stroustrup的初衷。以C為背景,以Simula思想為基礎(chǔ),正好符合他的設(shè)想。1979年,Bjame Sgoustrup到了Bell實驗室,開始從事將C改良為帶類的C(C with classes)的工作。1983年該語言被正式命名為C++。自從C++被發(fā)明以來,它經(jīng)歷了3次主要的修訂,每一次修訂都為C++增加了新的特征并作了一些修改。第一次修訂是在1985年,第二次修訂是在1990年,而第三次修訂發(fā)生在c++的標(biāo)準(zhǔn)化過程中。在20世紀(jì)90年代早期,人們開始為C++建立一個標(biāo)準(zhǔn),并成立了一個ANSI和ISO(Intemational Standards Organization)國際標(biāo)準(zhǔn)化組織的聯(lián)合標(biāo)準(zhǔn)化委員會。該委員會在1994年1月25曰提出了第一個標(biāo)準(zhǔn)化草案。在這個草案中,委員會在保持Stroustrup最初定義的所有特征的同時,還增加了一些新的特征。
在完成C++標(biāo)準(zhǔn)化的第一個草案后不久,發(fā)生了一件事情使得C++標(biāo)準(zhǔn)被極大地擴(kuò)展了:Alexander stepanov創(chuàng)建了標(biāo)準(zhǔn)模板庫(Standard Template Library,STL)。STL不僅功能強(qiáng)大,同時非常優(yōu)雅,然而,它也是非常龐大的。在通過了第一個草案之后,委員會投票并通過了將STL包含到C++標(biāo)準(zhǔn)中的提議。STL對C++的擴(kuò)展超出了C++的最初定義范圍。雖然在標(biāo)準(zhǔn)中增加STL是個很重要的決定,但也因此延緩了C++標(biāo)準(zhǔn)化的進(jìn)程。
委員會于1997年11月14日通過了該標(biāo)準(zhǔn)的最終草案,1998年,C++的ANSI/IS0標(biāo)準(zhǔn)被投入使用。通常,這個版本的C++被認(rèn)為是標(biāo)準(zhǔn)C++。所有的主流C++編譯器都支持這個版本的C++,包括微軟的Visual C++和Borland公司的C++Builder。


語言標(biāo)準(zhǔn)

  1. C++98標(biāo)準(zhǔn)
    C++標(biāo)準(zhǔn)第一版,1998年發(fā)布。正式名稱為ISO/IEC 14882:1998。
  2. C++03標(biāo)準(zhǔn)
    C++標(biāo)準(zhǔn)第二版,2003年發(fā)布。正式名稱為ISO/IEC 14882:2003[5] 。
  3. C++11標(biāo)準(zhǔn)
    C++標(biāo)準(zhǔn)第三版,2011年8月12日發(fā)布。正式名稱為ISO/IEC 14882:2011[6] 。
    C++11對容器類的方法做了三項主要修改。
    首先,新增的右值引用使得能夠給容器提供移動語義。其次,由于新增了模板類initilizer_list,因此新增了將initilizer_list作為參數(shù)的構(gòu)造函數(shù)和賦值運算符。第三,新增的可變參數(shù)模板(variadic template)和函數(shù)參數(shù)包(parameter pack)使得可以提供就地創(chuàng)建(emplacement)方法。
  4. C++14標(biāo)準(zhǔn)
    C++標(biāo)準(zhǔn)第四版,2014年8月18日發(fā)布。正式名稱為ISO/IEC 14882:2014[8]。
    C++14是C++11的增量更新,主要是支持普通函數(shù)的返回類型推演,泛型 lambda,擴(kuò)展的 lambda 捕獲,對 constexpr 函數(shù)限制的修訂,constexpr變量模板化等
    。
  5. C++17標(biāo)準(zhǔn)
    C++標(biāo)準(zhǔn)第五版,C++17 是繼 C++14 之后,C++ 編程語言 ISO/IEC 標(biāo)準(zhǔn)的下一次修訂的非正式名稱。而就在2017年12月5日,ISO C++ 委員會正式發(fā)布了 C++ 17 標(biāo)準(zhǔn),官方名稱為 ISO/IEC 14882:2017。

語言特點

支持?jǐn)?shù)據(jù)封裝和數(shù)據(jù)隱藏

在C++中,類是支持?jǐn)?shù)據(jù)封裝的工具,對象則是數(shù)據(jù)封裝的實現(xiàn)。C++通過建立用戶定義類支持?jǐn)?shù)據(jù)封裝和數(shù)據(jù)隱藏。
在面向?qū)ο蟮某绦蛟O(shè)計中,將數(shù)據(jù)和對該數(shù)據(jù)進(jìn)行合法操作的函數(shù)封裝在一起作為一個類的定義。對象被說明為具有一個給定類的變量。每個給定類的對象包含這個類所規(guī)定的若干私有成員、公有成員及保護(hù)成員。完好定義的類一旦建立,就可看成完全封裝的實體,可以作為一個整體單元使用。類的實際內(nèi)部工作隱藏起來,使用完好定義的類的用戶不需要知道類是如何工作的,只要知道如何使用它即可。

支持繼承和重用

在C++現(xiàn)有類的基礎(chǔ)上可以聲明新類型,這就是繼承和重用的思想。通過繼承和重用可以更有效地組織程序結(jié)構(gòu),明確類間關(guān)系,并且充分利用已有的類來完成更復(fù)雜、深入的開發(fā)。新定義的類為子類,成為派生類。它可以從父類那里繼承所有非私有的屬性和方法,作為自己的成員。

支持多態(tài)性

采用多態(tài)性為每個類指定表現(xiàn)行為。多態(tài)性形成由父類和它們的子類組成的一個樹型結(jié)構(gòu)。在這個樹中的每個子類可以接收一個或多個具有相同名字的消息。當(dāng)一個消息被這個樹中一個類的一個對象接收時,這個對象動態(tài)地決定給予子類對象的消息的某種用法。多態(tài)性的這一特性允許使用高級抽象。
繼承性和多態(tài)性的組合,可以輕易地生成一系列雖然類似但獨一無二的對象。由于繼承性,這些對象共享許多相似的特征。由于多態(tài)性,一個對象可有獨特的表現(xiàn)方式,而另一個對象有另一種表現(xiàn)方式。文章來源地址http://www.zghlxwxcb.cn/news/detail-472443.html

到了這里,關(guān)于【零基礎(chǔ)學(xué)習(xí)C++】歡迎來到C++的世界的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 歡迎來到IT時代----盤點曾經(jīng)爆火全網(wǎng)的計算機(jī)電影

    歡迎來到IT時代----盤點曾經(jīng)爆火全網(wǎng)的計算機(jī)電影

    計算機(jī)專業(yè)必看的幾部電影,就像一場精彩的編程盛宴!《黑客帝國》讓你穿越虛擬世界,感受高科技的魅力;《社交網(wǎng)絡(luò)》揭示了互聯(lián)網(wǎng)巨頭的創(chuàng)業(yè)之路,《源代碼》帶你穿越時間解救世界,這些電影不僅帶我們穿越到科技的前沿,還揭示了計算機(jī)科學(xué)背后的故事和挑戰(zhàn)。

    2024年02月21日
    瀏覽(26)
  • 【C→C++】打開C++世界的大門(C++基礎(chǔ)入門,看這一篇就夠了)

    【C→C++】打開C++世界的大門(C++基礎(chǔ)入門,看這一篇就夠了)

    這篇文章開始,我們正式進(jìn)入C++的學(xué)習(xí)。 什么是C++ C語言是結(jié)構(gòu)化和模塊化的語言,適合處理較小規(guī)模的程序。 對于復(fù)雜的問題,規(guī)模較大的程序,需要高度的抽象和建模,C語言則不合適。 為了解決軟件危機(jī), 20世紀(jì)80年代, 計算機(jī)界提出了OOP(object oriented programming:面向?qū)?/p>

    2024年02月07日
    瀏覽(15)
  • Js水幾個基礎(chǔ)知識點:數(shù)組的操作,字符串和數(shù)組之間的互轉(zhuǎn),持續(xù)補(bǔ)充,歡迎關(guān)注

    一、插入 / 刪除元素: 我們就不從創(chuàng)建開始講了,那個太基礎(chǔ)了,js創(chuàng)建數(shù)組一般都直接let arr = […,…,…],有部分仁兄喜歡new Array(…, …, …),這樣看起來可能高級點,結(jié)果是一樣的哈。 這里我們直接來討論插入元素: 1、在末尾插入 / 刪除元素(push / pop,操作原數(shù)組)

    2024年02月09日
    瀏覽(50)
  • C++學(xué)習(xí)基礎(chǔ)版(一)

    C++學(xué)習(xí)基礎(chǔ)版(一)

    目錄 一、C++入門 1、C和C++的區(qū)別 2、解讀C++程序 3、命名空間 4、輸入輸出 (1)cout輸出流 (2)endl操縱符 (3)cin輸入流 二、C++表達(dá)式和控制語句 1、數(shù)據(jù)機(jī)構(gòu) 特別:布爾類型bool 2、算數(shù)運算符 練習(xí)一:拆分位數(shù) 練習(xí)二:分段函數(shù)求值 3、bool類型 4、C++自增++和自減--運算符

    2024年03月18日
    瀏覽(27)
  • C++ 基礎(chǔ)學(xué)習(xí)5

    C++ 基礎(chǔ)學(xué)習(xí)5

    參考: https://blog.csdn.net/u013834525/article/details/104047635 https://zhuanlan.zhihu.com/p/610294692 在大多數(shù)情況下,emplace_back比push_back更高效,因為它可以避免不必要的拷貝和移動操作。emplace_back會在vector的末尾直接構(gòu)造一個新元素,而push_back則是先創(chuàng)建一個元素,然后再將其拷貝或移動到

    2024年02月06日
    瀏覽(20)
  • 【零基礎(chǔ)學(xué)習(xí)C++】如何寫一個C++類?

    【零基礎(chǔ)學(xué)習(xí)C++】如何寫一個C++類?

    個人主頁:【??個人主頁】 系列專欄:【??系列專欄:零基礎(chǔ)學(xué)習(xí)C++】 類是對現(xiàn)實生活中一類具有共同特征的事物的抽象 類的內(nèi)部封裝了屬性和方法,用于操作自身的成員。類是對某種對象的定義,具有行為(behavior),它描述一個對象能夠做什么以及做的方法(method),

    2024年02月11日
    瀏覽(20)
  • 【C++】打開C++大門,踏入C++世界

    【C++】打開C++大門,踏入C++世界

    ??????? 個人主頁:簡 料 ???? 所屬專欄:C++ ???? 個人社區(qū):越努力越幸運社區(qū) ???? 簡? ? ?? 介: 簡料簡料,簡單有料~在校大學(xué)生一枚,專注C/C++/GO的干貨分享,立志成為您的好幫手 ~ C/C++學(xué)習(xí)路線 (點擊解鎖) ?? C語言 ?? 初階數(shù)據(jù)結(jié)構(gòu)與算法 ?? C++ ??

    2024年02月03日
    瀏覽(27)
  • 學(xué)習(xí)C++這一篇就夠了(基礎(chǔ)篇)

    學(xué)習(xí)C++這一篇就夠了(基礎(chǔ)篇)

    在C++中如何使用C語言打包好的庫函數(shù) 空間分配原則是以“連續(xù)空閑”為核心的 運行某個程序后,一定會向內(nèi)存申請空間 分配內(nèi)存時,內(nèi)存空間一定是連續(xù)的 分配出來的空間,是不確定位置的 單行注釋: //一行的注釋內(nèi)容 多行注釋:(模塊化注釋) /* 多行的注釋內(nèi)容 多行

    2024年02月12日
    瀏覽(30)
  • 基于C++的QT基礎(chǔ)教程學(xué)習(xí)筆記

    基于C++的QT基礎(chǔ)教程學(xué)習(xí)筆記

    文章目錄: 來源 教程社區(qū)? 一:QT下載安裝 二:注意事項 1.在哪里寫程序 2.如何看手冊 3.技巧 三:常用函數(shù) 1.窗口? 2.相關(guān)? 3.按鈕 4.信號與槽函數(shù)? 5.常用欄? 菜單欄? 工具欄? 狀態(tài)欄 6.鉚接部件 7.文本編輯 8.背景圖 9.UI界面設(shè)計 10.常用對話框 11.實現(xiàn)界面的跳轉(zhuǎn) 12.常用控

    2024年02月16日
    瀏覽(52)
  • 【C++入門:C++世界的奇幻之旅】

    【C++入門:C++世界的奇幻之旅】

    1. 什么是C++ 2. C++發(fā)展史 3. C++的重要性 4. C++ 5. 命名空間 6. C++輸入輸出 7. 缺省參數(shù) 8. 函數(shù)重載 9. 引用 10. 內(nèi)聯(lián)函數(shù) 11. auto(C++11) 12. 基于范圍的for循環(huán)(C++11) 13. 指針空值---nullptr(C++11)05.? ????????C語言是結(jié)構(gòu)化和模塊化的語言,適合處理較小規(guī)模的程序。對于

    2024年02月08日
    瀏覽(23)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包