国产成人v爽在线免播放观看,日韩欧美色,久久99国产精品久久99软件,亚洲综合色网站,国产欧美日韩中文久久,色99在线,亚洲伦理一区二区

學習啦 > 學習方法 > 通用學習方法 > 時間管理 > 學習c++需要的時間以及知識

學習c++需要的時間以及知識

時間: 素雯896 分享

學習c++需要的時間以及知識

  C++是當今應用廣泛的計算機編程語言,那么想要學習掌握C++大概要多長時間呢?應該怎樣學習C++?下面是學習啦小編整理的學習c++需要的時間以及知識,希望對您有用。

  學習c++需要的時間以及知識篇一

  完全學習C語言需要一個月。

  學習語言容易,但要想隨心所欲的發(fā)揮,需要相當長的時間,你先花一個月的時間把C語言的語法、函數(shù)庫等弄明白,再花半年時間閱讀一些別人編好的程序,以能看明白為準,然后自己編一些小程序。然后你就能對比出你自己的水平與你心中所謂的“完全學習”差距有多大了。

  學習是個長期的積累的過程。學任何知識都是這樣,尤其是計算機行業(yè),發(fā)展太快,要學的東西更多。編程語言只不過是一個方面而已,但做好也不是件容易的事。從事工作了也更得學。java ,c /c++ ...什么的語言,都是相通的。只是語法上有些區(qū)別,重要的是數(shù)據(jù)結(jié)構(gòu)和算法。程序就是算法和數(shù)據(jù)結(jié)構(gòu),這些掌握了才叫會編程,才會寫出好程序。學會語法只能算是學習英文認識字母一樣。慢慢學吧。

  學習c++需要的時間以及知識篇二

  如果說有一種語言定義了當今編程的實質(zhì),那么它就是C++。它是高性能軟件開發(fā)的杰出語言。它的語法已經(jīng)成為專業(yè)編程語言的標準,并且它的設(shè)計思想在計算界引起深刻的反響。

  Java和C#語言都是從C++繼承而來的。簡而言之,要成為專業(yè)的編程人員就意味著要深刻理解C++。它是現(xiàn)代編程的基礎(chǔ)。

  本篇旨在介紹C++,包括它的歷史,它的設(shè)計思想,以及幾個最重要的特性。學習一門編程語言最困難的事情就是所有的元素都不是單獨孤立存在的。相反,構(gòu)成語言的各個部分是相互協(xié)作,一起工作的。這種相關(guān)性使得我們很難討論C++的一個方面而不去考慮其它方面。為了克服這個困難,本篇對幾個C++特性進行了簡單的介紹,包括C++程序的通用形式,一些基本的控制語句,以及運算符。本篇不會涉及過多的細節(jié),更注重C++程序中通用的概念。

  必備技能 1.1 C++歷史簡介

  C++是從C語言發(fā)展而來的。這一點不難理解,因為C++是構(gòu)筑的C語言的基礎(chǔ)之上的。然而,C++是C語言的超集。C++擴展并增強了C語言,支持面向?qū)ο蟮木幊?這點在本篇的后面會進行描述)。C++同時對C語言做了改進,包括擴展了例行程序庫集。然而大部分的C++特性是直接從C繼承而來的。因此,為了充分理解和欣賞C++,我們必須深入了解C語言是如何運作的。

  C: 現(xiàn)代編程時代的開始

  C語言的發(fā)明定義了現(xiàn)代編程時代的開始。它的影響不應該被低估,因為它從根本上改變了人們考慮和實現(xiàn)程序的方法。它的設(shè)計思想和語法已經(jīng)影響到了每一個主流的編程語言。C語言是計算發(fā)展的主要的,革命性的推動力之一。

  C語言由Dennis Ritchie 在 DEC PDP-11電腦上,在UNIX操作系統(tǒng)下發(fā)明并實現(xiàn)的。C語言是從一種古老的叫做BCPL的語言發(fā)展而來。BCPL 是由Martin Richards開發(fā)的。BCPL 語言對由 Ken Thompson 發(fā)明的B語言產(chǎn)生著深刻的影響,而B語言最終在20世紀70年代發(fā)展成C語言。

  在C語言發(fā)明之前,計算機語言被設(shè)計出來或者是為了進行學術(shù)計算,或者是為官方的委員們所使用。而C卻不同。它是一群真實的程序員設(shè)計、實現(xiàn)并開發(fā)出來的。它反映了這些人完成編程工作的方法。它的特性是這群實際使用這個語言的人們反復推敲,打磨,測試的結(jié)果。因此,C語言吸引了眾多的擁護者,并迅速成為全世界編程人員的選擇。 C語言的發(fā)展經(jīng)歷了20世紀60年代的結(jié)構(gòu)化編程的革命。在此之前,大型程序是難以書寫的,因為程序的邏輯趨向于退化成“意大利面條式的代碼”,充斥著難以理解的,混亂的轉(zhuǎn)跳,函數(shù)調(diào)用和返回。結(jié)構(gòu)化編程通過增加很好的控制語句,帶有局部變量的子程序段和其它的一些改進解決了這個問題。結(jié)構(gòu)化編程使得編寫巨大的程序成為了可能。盡管還有別的結(jié)構(gòu)化的編程語言,例如Pascal,C卻是第一個功能強大,富于表達,能書寫出優(yōu)美代碼的結(jié)構(gòu)化語言。它語法簡單易用,并且它的設(shè)計思想是程序員掌控一切,而不是語言本身掌控一切,這就使得C語言很快擁有了眾多的擁護者。我們現(xiàn)在來看這點可能有點難以理解,但是C當時確實為編程者帶來了他們渴望已久的新鮮空氣。因此,C語言很快就在20世紀80年代變成了使用最廣泛的結(jié)構(gòu)化編程語言。

  學習c++需要的時間以及知識篇三

  絕大多數(shù)人都把細節(jié)太多(或者用貶義詞來說就是“陰暗角落太多”)歸結(jié)為C++的本質(zhì)問題,認為一切邪惡由此而生。也正因此,大約9月份的時候,Linus在郵件列表上說“C++是一門有思想包袱的語言;僅僅是為了讓程序員遠離C++,我也要用C”。這句短短的話在國內(nèi)引起了很大的反應.

  然而,這一通渾水攪過之后,我相信引起的變化未必很大。大多數(shù)原先的反對者能從中找出反對的理由,于是更加反對;大多數(shù)原先的贊同者也能從中找到贊同的理由,于是更加贊同;而剩下來的原先沒有明確意見的,看雙方各有各的道理,可能還是沒有頭緒。

  擺脫自我服務偏見——理性思考的前提

  《決策與判斷》上提到過一個有趣的真實故事:1980年的某一天,美國空戰(zhàn)司令部的計算機突然發(fā)出警報——蘇聯(lián)的一枚核彈正在向美國本土飛來。司令部立即調(diào)兵遣將,迅速為一場核戰(zhàn)做好了準備,然而3分鐘之后,工程人員發(fā)現(xiàn)是計算機的一個小零部件故障造成的。然而,這場虛驚之后,大眾的反應才是真正有意思的:原先支持核武裝的,認為現(xiàn)在感覺更加安全了(因為“事實證明這類的故障是完全可克服的”);而原先反對核武裝的則認為更不安全了(因為“這類錯誤信號可能導致蘇聯(lián)過度反應,引發(fā)真正的核戰(zhàn)”)。類似的情況也發(fā)生在三里島核泄露事件之后,同樣的,反對者認為(“這表明管理部門沒有辦法安全管理核能”),支持者認為(“這正表明這樣的危險沒有想像得那么嚴重,是可克服的”)。社會心理學把諸如此類的現(xiàn)象總結(jié)為“自我服務偏見”。不幸的是,“真理越辯越明”其實只適用于理性思考者。

  為什么啰嗦這么一大通呢?就是因為,一直以來泛濫于程序員社群的“語言之爭”,背后真正的原因其實并不在于語言實質(zhì)上的優(yōu)劣,而在于觀察者的眼睛。在觀察者的眼睛里面,語言并非一門工具,而是自己花了N多時間(其中尤數(shù)C++為最)來“修煉”的技能,對于這樣的技能,被否定無疑等同于自己被否定。所以,從心理學上講,語言并不是工具(盡管一直有這么一種呼吁),而是信仰。這樣的信仰在越是花得時間久的語言上越是激烈。有趣的是,幾乎所有的“熱鬧”的社群都有這樣的現(xiàn)象;因為就算語言本身不復雜,程序員仍然還是要投入大量的精力去學習各種各樣的框架類庫(想想Java的那些框架?)。因此這些語言社區(qū)的信仰未必不比C++社群的強烈。 然而,一旦弄清我們?yōu)槭裁磿颜Z言當成信仰,就非常有助于擺脫在看待語言時的“自我服務偏見”,從客觀的角度去看待問題。——“當你看到的是支持某個意見的證據(jù)時,試著去想一想有哪些證據(jù)是不支持它的”。

  那么為什么要擺脫自我服務偏見?說小了,是為了成為一個更優(yōu)秀的程序員(誰也不希望因為偏見而去使用一門低效的語言乃至不妥當?shù)恼Z言)。說大了是節(jié)省生命(因為偏見可能導致越陷越深,浪費時間)。

  所以,如果你能夠理性的思考我們將要討論的問題,避免自我服務偏見(就當你從來沒有花時間在C++上一樣)。那么我們便可以開始討論真正的問題了。

  現(xiàn)在,幾乎每個學習C++的都知道C++的核心問題是其復雜性;甚至本身不在C++社群的,也知道這是事實。群眾的眼睛是雪亮的,何況這還是個太顯而易見的事實。

  但看了無數(shù)篇闡述C++復雜性的文章,和爭論C++復雜性的吐沫星子(包括我前段時間寫的兩篇關(guān)于C++的總結(jié))。我始終都有一個感覺——沒分析透,就跟盲人摸象一樣。正如“Why C++”的一位讀者批評的,我在文章里面沒有寫明到底哪些是C++的“非本質(zhì)復雜性”。當然,我自己憑感覺就能知道,而接觸C++一段時間的人大致也能知道,但新手乃至非新手則對我所謂的“非本質(zhì)復雜性”根本沒有一個具體的認識,這就使得那篇“Why C++”脫離了原本的意圖——面向所有C++使用者和學習者。

  同樣的原因,在寫了“你應當如何學習C++”一文之后,當孟巖先生邀請我給《程序員》寫一個系列的文章,介紹一下我在接觸C++的過程中的態(tài)度和認識轉(zhuǎn)變時,我雖然非常高興的答應了,但直到現(xiàn)在3個月過去了還是顆粒無收。為什么?因為我覺得真正本質(zhì)的問題沒有被清晰的觸摸到;所以直到現(xiàn)在我都沒有動筆,免得廢話說了一大堆,除了能被當成小說讀讀之外,對真正考慮是否要學習乃至使用C++的人未必有什么實際用處。

  然而,這么個念頭一直都放在潛意識里面。前一陣子和xx通信,談到了關(guān)于C++復雜性的一些想法,在郵件里面總結(jié)了一下C++的復雜性來源,感覺思路清晰了許多。而這篇文章要達到的目的,正是傳達對C++的復雜性的一個具體而明確的認識,有了這個認識作為支持,我們便可以推導出學習C++的最佳(實踐者)的方法。

1922395