日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
C++相比其他語言到底難在哪里?

看過編程語言排行榜的都知道,c/c++自02年以來,不管時代如何發(fā)展,其排名一直在前五以內(nèi),足見其在編程語言界的地位。編程界流行這么一句話:c幾乎什么都能做,c++幾乎什么都能做好,足見其功能的強大。

大家都知道c++完全兼容c,c++是c語言的增強版,如果沒有學(xué)習(xí)過c語言或者先學(xué)習(xí)的其他語言,比如c#,再學(xué)習(xí)c++就會覺得好難呀,那么c++相比其他語言到底難在哪里呢?

一、C++歷史包袱太多

C++是上世紀(jì)80年代的發(fā)明,算是比較古老的了,在長期的發(fā)展中,存在大量的歷史問題,在解決某個問題時,面臨的選擇太多,為了兼容以前的代碼和以前的規(guī)范,不得不使整個系統(tǒng)復(fù)雜龐大。

二、C++沒有一個唯一的大東家

我們知道很多語言背后都有一個團隊在運營,比如微軟的c#、甲骨文的java、谷歌的go,再看c++,它不隸屬于任何一個團隊,它沒有唯一的編譯器開發(fā)商,微軟的msvc、linux的g++,還有clang等等,這么多廠商,誰也不占主導(dǎo)地位,誰也不聽誰的,最后只能成立一個c++標(biāo)準(zhǔn)協(xié)會,大家協(xié)商著來,相互妥協(xié),這種相互妥協(xié),導(dǎo)致c++變得異常復(fù)雜,既兼容這個又兼容那個,迄今為止沒有一個公認(rèn)的嚴(yán)格的c++規(guī)范,c++是非常自由的,而自由也意味著難度大

三、c++沒有完善的自動垃圾回收機制

當(dāng)我們一提到c/c++,大概首先能夠想到的就是指針,指針是c/c++的精髓,同樣也是難度的根源之一,像Java、Python等很多編程語言是沒有指針的,因為他們的虛擬機或者解釋器自帶垃圾回收機制,編程者完全不用操心內(nèi)存回收的問題,而c/c++在使用完申請的內(nèi)存空間之后,又要回收,最常見的問題就是忘了回收或者其他變量正在引用就提前回收了,而帶垃圾回收的語言,編程者根本不需要操心這些事,完全不需要知道內(nèi)存是如何分配的,該誰來回收以及如何回收,自動垃圾回收有利有弊,利是對開發(fā)者簡單,弊是運行效率相對低下,c/c++是注重運行效率而犧牲了簡單性。

四、c++語法博大精深

上面說了這么多,強調(diào)的都是背后原因,那具體說來,到底c++難在哪里呢?相比Java、C#、Python、PHP、JavaScript、Go、C、R、scala、F#,在純語法上,和c++的難度完全不在一個量級,而說C++簡單的,大概都是剛畢業(yè)沒幾年,只玩過c++而不知道其他語言的,比如復(fù)雜的const和static語義,指針運算,取地址運算、模板、多態(tài)、構(gòu)造函數(shù)、繼承等等。

五、第三方庫不多

相對來說,c++主張從輪子造起,第三方庫不是太多,很多看似簡單的功能都得自己實現(xiàn)或者拼命的找?guī)?,一般來說,c++使用的時間長了,就會掌握的更好,因為可以不斷積累庫函數(shù)。

沒有哪一種語言是絕對好絕對不好的,都各自都各自的優(yōu)勢和劣勢,c++是一種非常靈活的語言,具有撰寫高性能代碼的能力,幾乎覆蓋了我們能夠想到的所有的領(lǐng)域,包括航空航天、半導(dǎo)體和設(shè)備驅(qū)動等等,而c++除了性能優(yōu)勢,也非常的穩(wěn)定,20年前的代碼現(xiàn)在依然可以使用。


分享題目:C++相比其他語言到底難在哪里?
網(wǎng)頁鏈接:http://www.5511xx.com/article/cdgegpj.html