日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > c/c++ >内容正文

c/c++

C与C++的区别

發(fā)布時(shí)間:2023/12/20 c/c++ 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C与C++的区别 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

C與C++的區(qū)別

  • C++的起源
  • C與C++的區(qū)別
  • C與C++在一些方面哪個(gè)更優(yōu)秀
    • 技術(shù)層面
    • 商業(yè)層面

C++的起源

20世紀(jì)70年代中期,Bjarne Stroustrup在劍橋大學(xué)計(jì)算機(jī)中心工作。

他使用過(guò)Simula和ALGOL,接觸過(guò)C。

他對(duì)Simula的類體系感受頗深,對(duì)ALGOL的結(jié)構(gòu)也很有研究,深知運(yùn)行效率的意義。

既要編程簡(jiǎn)單、正確可靠,又要運(yùn)行高效、可移植,是Bjarne Stroustrup的初衷。

以C為背景,以Simula思想為基礎(chǔ),正好符合他的設(shè)想。

1979年,Bjame Sgoustrup到了Bell實(shí)驗(yàn)室,開始從事將C改良為帶類的C(C with classes)的工作。

1983年該語(yǔ)言被正式命名為C++。

自從C++被發(fā)明以來(lái),它經(jīng)歷了3次主要的修訂,每一次修訂都為C++增加了新的特征并作了一些修改。

第一次修訂是在1985年,第二次修訂是在1990年,而第三次修訂發(fā)生在c++的標(biāo)準(zhǔn)化過(guò)程中。

在20世紀(jì)90年代早期,人們開始為C++建立一個(gè)標(biāo)準(zhǔn),并成立了一個(gè)ANSI和ISO(Intemational Standards
Organization)國(guó)際標(biāo)準(zhǔn)化組織的聯(lián)合標(biāo)準(zhǔn)化委員會(huì)。

該委員會(huì)在1994年1月25曰提出了第一個(gè)標(biāo)準(zhǔn)化草案。
在這個(gè)草案中,委員會(huì)在保持Stroustrup最初定義的所有特征的同時(shí),還增加了一些新的特征。

C與C++的區(qū)別

  • C是面向過(guò)程的語(yǔ)言,C++是面向?qū)ο蟮恼Z(yǔ)言。
  • 動(dòng)態(tài)管理內(nèi)存的方法,C是使用malloc/free函數(shù),而C++使用new/delete關(guān)鍵字;
  • C中的struct和C++的類,C++的類是C所沒有的,但是C中的struct是可以在C++中正常使用,并且C++對(duì)struct進(jìn)行了進(jìn)一步的擴(kuò)展,使struct在C++中可以和class一樣當(dāng)做類使用,而唯一和class不同的地方在于struct的成員默認(rèn)訪問修飾符是public,而class默認(rèn)的是private;
  • C++支持函數(shù)重載,而C不支持函數(shù)重載,而C++支持重載的依仗就在于C++的名字修飾與C不同,例如在C++中函數(shù)int fun(int,int)經(jīng)過(guò)名字修飾之后變?yōu)?_fun_int_int ,而C是_fun,一般是這樣的,所以C++才會(huì)支持不同的參數(shù)調(diào)用不同的函數(shù)(C++編譯匯編時(shí),會(huì)將重載的函數(shù)根據(jù)參數(shù)表,翻譯成不同的函數(shù)名來(lái)實(shí)現(xiàn)重載);
  • C++中有引用,而C沒有;這樣就不得不提一下引用和指針的區(qū)別;
  • C++全部變量的默認(rèn)鏈接屬性是外鏈接,而C是內(nèi)連接;
  • C中用const修飾的變量不可以用在定義數(shù)組時(shí)的大小,但是C++用const修飾的變量可以(如果不進(jìn)行&,解引用的操作的話,是存放在符號(hào)表的,不開辟內(nèi)存);
  • 此外,C++還有的一些特性(封裝、繼承、多態(tài)、泛型)等不一一列舉了。

C與C++在一些方面哪個(gè)更優(yōu)秀

技術(shù)層面

C占用資源少,運(yùn)行速度較快。
C++面向?qū)ο蟮脑O(shè)計(jì)思想,擁有強(qiáng)大的特性和庫(kù),開發(fā)效率高。

商業(yè)層面

C用于嵌入式開發(fā)和操作系統(tǒng)的開發(fā)。
C++用于商業(yè)軟件和網(wǎng)絡(luò)游戲開發(fā)。

參考與引用的網(wǎng)址:
[1].https://baike.baidu.com/item/C++/99272
[2].https://blog.csdn.net/bitboss/article/details/62884694

總結(jié)

以上是生活随笔為你收集整理的C与C++的区别的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。