掌握C++和C#、Java的區(qū)別進(jìn)行學(xué)習(xí)探討
隨著時(shí)代的進(jìn)步科技的發(fā)展C++和C#版本也快速的提升與升級(jí),下面我就對(duì)升級(jí)前和升級(jí)后的C++和C#、,做一下自己的解析。希望能夠?qū)Υ蠹矣袔椭?在這里拿出來(lái)和大家分享一下。
總的來(lái)說(shuō),C++和C#、Java的區(qū)別集中在以下幾點(diǎn):
(1)C#、Java代碼編譯后(形成中間代碼)是在虛擬機(jī)上執(zhí)行的。C++則不是。
(2)C#、Java語(yǔ)言相對(duì)于C++語(yǔ)言來(lái)說(shuō)較為簡(jiǎn)單,比較容易上手。C++的語(yǔ)法特性多、復(fù)雜,較難掌握。
(3)C++語(yǔ)言本身是一個(gè)標(biāo)準(zhǔn),各種實(shí)現(xiàn)之間有區(qū)別,對(duì)標(biāo)準(zhǔn)的理解、執(zhí)行程度也不同。而C#、Java語(yǔ)言是由商業(yè)公司掌握的,在這方面很少有問(wèn)題。
(4)C#、Java是直接面向應(yīng)用的,各種標(biāo)準(zhǔn)、模型都很成熟。而C++的各種庫(kù)在不同的C++編譯器實(shí)現(xiàn)上可能遇到一些問(wèn)題。
(5)三者都是面向?qū)ο蟮?。C#、Java比C++更為徹底一些。有觀點(diǎn)認(rèn)為C#、Java是徹底地面向?qū)ο蟮恼Z(yǔ)言,這種說(shuō)法不妥,因?yàn)閷?duì)于面向?qū)ο蟮恼Z(yǔ)言,并沒(méi)有一個(gè)特定的標(biāo)準(zhǔn),例如也有觀點(diǎn)認(rèn)為最近很流行的Ruby語(yǔ)言比C#、Java更加面向?qū)ο蟆?BR>(6)C++擁有很多現(xiàn)代的、令人激動(dòng)的語(yǔ)言特性,例如模板、泛型編程等。在這一點(diǎn)上,C#和Java也在迅速跟進(jìn)。
C++是一門精致的、藝術(shù)的編程語(yǔ)言。筆者認(rèn)為,C++也是所有已知程序設(shè)計(jì)語(yǔ)言中最靈活、最難學(xué)的語(yǔ)言之一。學(xué)好C++基本上也意味著可以學(xué)好任一種其他的高級(jí)程序設(shè)計(jì)語(yǔ)言。圖1.1對(duì)C、C++和C#、Java這4種語(yǔ)言的幾個(gè)方面做了比較。
在介紹C++語(yǔ)言的主要應(yīng)用領(lǐng)域之前,可以先介紹C++語(yǔ)言的使用者情況。C++語(yǔ)言之父Bjarne Stroustrup博士在一次關(guān)于C++的討論中提到:“C++在經(jīng)過(guò)前10年(1985-1994)的爆炸性增長(zhǎng)之后,后10年(1995-2004)的使用人數(shù)一直在穩(wěn)定地增長(zhǎng)。”#t#
事實(shí)上,就筆者的周圍環(huán)境來(lái)看,也的確如此,雖然這個(gè)增長(zhǎng)的速度沒(méi)有Java等語(yǔ)言快,但是使用C++的程序員人數(shù)仍然在增長(zhǎng)。這說(shuō)明,C++語(yǔ)言仍然跟得上“潮流”,仍然能夠滿足程序員和實(shí)際應(yīng)用的需要。
目前,在Web開(kāi)發(fā)上,C++和C#、沒(méi)有多大的市場(chǎng)。在企業(yè)級(jí)的應(yīng)用上,以Java、.NET(C#是其中重要的一員)居多,C++仍然占有一席之地。在系統(tǒng)級(jí)的開(kāi)發(fā)上,C/C++應(yīng)用居多。這3種語(yǔ)言各有特色。總的來(lái)說(shuō),C++的應(yīng)用集中在如下主要領(lǐng)域。游戲:C++的效率是一個(gè)很重要的原因。
科學(xué)計(jì)算:在科學(xué)計(jì)算領(lǐng)域,F(xiàn)ORTRAN是使用最多的語(yǔ)言之一。但是近年來(lái),C++憑借先進(jìn)的數(shù)值計(jì)算庫(kù)、泛型編程等優(yōu)勢(shì)在這一領(lǐng)域也應(yīng)用頗多。
網(wǎng)絡(luò)軟件:C++擁有很多成熟的用于網(wǎng)絡(luò)通信的庫(kù),其中最具有代表性的是跨平臺(tái)的、重量級(jí)的ACE庫(kù),該庫(kù)可以說(shuō)是C++語(yǔ)言最重要的成果之一,在許多重要的企業(yè)、部門甚至是軍方都有應(yīng)用。分布式應(yīng)用。
操作系統(tǒng):在該領(lǐng)域,C++和C#、是主要使用的編程語(yǔ)言。但是C++憑借其對(duì)C的兼容性,面向?qū)ο笮再|(zhì)也開(kāi)始在該領(lǐng)域嶄露頭角。設(shè)備驅(qū)動(dòng)程序:也是因?yàn)樾实脑?。移?dòng)(手持)設(shè)備。嵌入式系統(tǒng)。教育與科研。部分行業(yè)應(yīng)用。 其他應(yīng)用。















 
 
 


 
 
 
 