自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

詳細(xì)說(shuō)明C++程序設(shè)計(jì)語(yǔ)言概述

開發(fā) 后端
C++語(yǔ)言簡(jiǎn)潔、高效,但是C語(yǔ)言也有其自身的缺點(diǎn),例如弱的類型檢查機(jī)制等,使得使用C語(yǔ)言開發(fā)大型的應(yīng)用程序比較困難。

C++語(yǔ)言來(lái)說(shuō)較為簡(jiǎn)單,比較容易上手。C++的語(yǔ)法特性多、復(fù)雜,較難掌握,C語(yǔ)言誕生于20世紀(jì)70年代,是一種應(yīng)用相當(dāng)廣泛的程序設(shè)計(jì)語(yǔ)言(尤其是在系統(tǒng)程序設(shè)計(jì)領(lǐng)域)。

20世紀(jì)80年代,美國(guó)貝爾實(shí)驗(yàn)室的Bjarne Stroustrup博士及其同事在C語(yǔ)言的基礎(chǔ)上引入了面向?qū)ο蟮木幊趟枷牒鸵粋€(gè)class關(guān)鍵字,形成了最早的C++語(yǔ)言原型。后來(lái),C++語(yǔ)言被融入了越來(lái)越多的語(yǔ)言特性,其中***有意義、影響最深遠(yuǎn)的莫過(guò)于template(模板)的引入。

最終美國(guó)國(guó)家標(biāo)準(zhǔn)化協(xié)會(huì)ANSI(American National Standard Institute)和國(guó)際標(biāo)準(zhǔn)化組織ISO(International Standards Organization)一起對(duì)C++語(yǔ)言進(jìn)行了標(biāo)準(zhǔn)化工作,并于1998年正式發(fā)布了C++語(yǔ)言的國(guó)際標(biāo)準(zhǔn)ISO/IEC:98-14882。C++已經(jīng)成為***的程序設(shè)計(jì)語(yǔ)言之一。

很多剛接觸程序設(shè)計(jì)的人經(jīng)常會(huì)問(wèn)“C++和C#、Java有哪些區(qū)別?學(xué)哪個(gè)比較好?”這樣的問(wèn)題。在網(wǎng)絡(luò)上搜索一下,也不難發(fā)現(xiàn)這個(gè)問(wèn)題已在各大論壇中成為討論的焦點(diǎn)。C語(yǔ)言是面向過(guò)程的。C++和C#、Java這3種語(yǔ)言都使用了類似C風(fēng)格的語(yǔ)法,但它們都是面向?qū)ο螅∣OP)的。C++是對(duì)C語(yǔ)言的一個(gè)擴(kuò)充,也就是說(shuō),一個(gè)C語(yǔ)言的程序,也可以認(rèn)為是一個(gè)C++程序(沒(méi)有用到C++高級(jí)特性而已),C#和Java對(duì)C語(yǔ)言沒(méi)有任何的兼容性。

C++和C#、Java這3種語(yǔ)言中,C++是最早出現(xiàn)的,保持了對(duì)C的兼容性,允許指針的存在,允許程序員手動(dòng)高效地管理、使用內(nèi)存(盡管這也是最容易引起問(wèn)題的地方)。C++在發(fā)展的過(guò)程中,不斷地補(bǔ)充語(yǔ)言特性,使得C++成為最靈活的編程語(yǔ)言之一。#t#

C++語(yǔ)言的靈活性是建立在其復(fù)雜的語(yǔ)法之上的,因此對(duì)于初學(xué)者來(lái)說(shuō),很有可能因此望而卻步,但是如果堅(jiān)持下去,就會(huì)發(fā)現(xiàn),再去看C#、Java語(yǔ)法時(shí)會(huì)感到很輕松。

C#、Java語(yǔ)言相對(duì)C++語(yǔ)言來(lái)說(shuō),在語(yǔ)法上要簡(jiǎn)單得多,因此初學(xué)者很容易上手。二者拋棄了最容易引起問(wèn)題的指針,對(duì)內(nèi)存的管理完全自動(dòng)化,這樣雖然帶來(lái)了程序的穩(wěn)定性和安全性,但是在某種程度上丟失了效率。

提示:因?yàn)閮?nèi)存管理自動(dòng)化,C#、Java語(yǔ)言擁有垃圾自動(dòng)回收機(jī)制,在C++中,申請(qǐng)的內(nèi)存必須由程序員自己手動(dòng)釋放,如果忘記這一點(diǎn)就會(huì)引起內(nèi)存泄露。
C++語(yǔ)言的語(yǔ)言特性在一定程度上彌補(bǔ)了如下不足:部分C++庫(kù)擁有內(nèi)存管理機(jī)制,如STL、Boost等。C++擁有智能指針。某些C++庫(kù)實(shí)現(xiàn)了垃圾回收功能。

Java的程序是運(yùn)行在虛擬機(jī)上(Virtual Machine)的,而C++不是,C++程序的代碼是直接運(yùn)行在物理機(jī)器上的。
就Java和C#二者單獨(dú)來(lái)看,C#更像是微軟公司和SUN公司進(jìn)行商業(yè)斗爭(zhēng)的產(chǎn)物。歷史上,微軟公司是支持過(guò)Java語(yǔ)言的,代表性的產(chǎn)品有Visual J++和WFC。后來(lái)因?yàn)楸娝苤脑?,微軟公司推出了C#,其目的很明確,就是和Java競(jìng)爭(zhēng)。

實(shí)際上C#和Java在特性上也非常類似(不僅僅是語(yǔ)法)。二者都是為了更加方便地解決應(yīng)用問(wèn)題,在GUI、數(shù)據(jù)庫(kù)訪問(wèn)、網(wǎng)絡(luò)通信、多線程等和實(shí)際應(yīng)用密切相關(guān)的點(diǎn)上都有成熟的解決方案。C++更多地靠第三方的庫(kù)來(lái)實(shí)現(xiàn)這些功能,因?yàn)镃++是一個(gè)國(guó)際標(biāo)準(zhǔn),要在C++中加入這些語(yǔ)言之外的、面向應(yīng)用的特性還需要很長(zhǎng)一段路要走。而C#、Java的擁有者是商業(yè)化公司,各種動(dòng)作自然要敏捷得多。

但是這并不意味著C++即將消亡(這樣的言論很多)。不可否認(rèn)的是C++在C#、Java的進(jìn)攻下,丟失了一些領(lǐng)域,但是C++語(yǔ)言仍然在普遍使用,很重要的原因就是因?yàn)镃++既保持了C語(yǔ)言級(jí)別的效率(某些情況下例外),又加入了面向?qū)ο蟮奶匦浴?/P>

責(zé)任編輯:chenqingxiang 來(lái)源: CSDN
相關(guān)推薦

2010-01-15 16:45:35

C++語(yǔ)言

2010-01-27 14:24:15

C++程序設(shè)計(jì)

2010-01-19 13:43:59

C++函數(shù)

2010-01-28 11:08:09

C++變量

2011-08-25 10:35:14

Lua語(yǔ)言函數(shù)

2010-01-19 09:54:19

C++代碼

2011-04-25 13:31:51

Objeck

2010-01-13 13:27:00

C++優(yōu)化

2010-01-25 17:29:10

C++語(yǔ)言

2010-01-11 15:47:37

C++編譯

2010-01-28 09:54:27

C++程序設(shè)計(jì)

2010-03-05 14:16:38

Android設(shè)計(jì)平臺(tái)

2010-02-04 15:20:50

Android SDK

2015-05-18 15:08:08

多種程序設(shè)計(jì)語(yǔ)言程序設(shè)計(jì)語(yǔ)言

2010-01-11 17:34:37

C++語(yǔ)言

2010-01-15 15:06:30

C++語(yǔ)言

2010-01-13 18:30:18

CC++程序設(shè)計(jì)

2010-01-11 17:43:23

C++程序設(shè)計(jì)

2009-12-28 09:26:09

ADO對(duì)象

2009-12-11 14:21:55

VS2010程序
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)