下面的是學C++時要注重的。
1.把C++當成一門新的語言學習(和C沒啥關系!真的。);
2.看《Thinking In C++》,不要看《C++變成死相》;
3.看《The C++ Programming Language》和《Inside The C++ Object
Model》,不要因為他們很難而我們自己是初學者所以就不看;
4.不要被VC、BCB、BC、MC、TC等詞匯所迷惑——他們都是集成開發環境,而我們要學的是一門語言;
5.不要放過任何一個看上去很簡單的小編程問題——他們往往並不那麼簡單,或者可以引伸出很多知識點;
6.會用Visual C++,並不說明你會C++;
7.學class並不難,template、STL、generic
programming也不過如此——難的是長期堅持實踐和不遺余力的博覽群書;
8.假如不是天才的話,想學編程就不要想玩游戲——你以為你做到了,其實你的C++水平並沒有和你通關的能力一起變高——其實可以時刻記住:學C++是為了編游戲的;
9.看Visual C++的書,是學不了C++語言的;
10.浮躁的人輕易說:XX語言不行了,應該學YY;——是你自己不行了吧!?
11.浮躁的人輕易問:我到底該學什麼;——別問,學就對了;
12.浮躁的人輕易問:XX有錢途嗎;——建議你去搶銀行;
13.浮躁的人輕易說:我要中文版!我英文不行!——不行?學呀!
14.浮躁的人輕易問:XX和YY哪個好;——告訴你吧,都好——只要你學就行;
15.浮躁的人分兩種:a)只觀望而不學的人;b)只學而不堅持的人;
16.把時髦的技術掛在嘴邊,還不如把過時的技術記在心裡;
17.C++不僅僅是支持面向對象的程序設計語言;
18.學習編程最好的方法之一就是閱讀源代碼;
19.在任何時刻都不要認為自己手中的書已經足夠了;
20.請閱讀《The Standard C++ Bible》(中文版:標准C++寶典),把握C++標准;
21.看得懂的書,請仔細看;看不懂的書,請硬著頭皮看;
22.別指望看第一遍書就能記住和把握什麼——請看第二遍、第三遍;
23.請看《Effective C++》和《More Effective C++》以及《Exceptional C++》;
24.不要停留在集成開發環境的搖籃上,要學會控制集成開發環境,還要學會用命令行方式處理程序;
25.和別人一起討論有意義的C++知識點,而不是爭吵XX行不行或者YY與ZZ哪個好;
26.請看《程序設計實踐》,並嚴格的按照其要求去做;
27.不要因為C和C++中有一些語法和要害字看上去相同,就認為它們的意義和作用完全一樣;
28.C++絕不是所謂的C的“擴充”——假如C++一開始就起名叫Z語言,你一定不會把C和Z語言聯系得那麼緊密;
29.請不要認為學過XX語言再改學C++會有什麼問題——你只不過又在學一門全新的語言而已;
30.讀完了《Inside The C++ Object Model》以後再來認定自己是不是已經學會了C++;
31.學習編程的秘訣是:編程,編程,再編程;
32.請留意下列書籍:《C++面向對象高效編程(C++ Effective Object-Oriented Software ConstrUCtion)》《面向對象軟件構造(Object-Oriented Software Construction)》《設計模式(Design Patterns)》《The Art of Computer Programming》;
33.記住:面向對象技術不只是C++專有的;
34.請把書上的程序例子親手輸入到電腦上實踐,即使配套光盤中有源代碼;
35.把在書中看到的有意義的例子擴充;
36.請重視C++中的異常處理技術,並將其切實的運用到自己的程序中;
37.經常回顧自己以前寫過的程序,並嘗試重寫,把自己學到的新知識運用進去;
38.不要漏掉書中任何一個練習題——請全部做完並記錄下解題思路;
39.C++語言和C++的集成開發環境要同時學習和把握;
40.既然決定了學C++,就請堅持學下去,因為學習程序設計語言的目的是把握程序設計技術,而程序設計技術是跨語言的;
41.就讓C++語言的各種平台和開發環境去激烈的競爭吧,我們要以學習C++語言本身為主;
42.當你寫C++程序寫到一半卻發現自己用的方法很拙劣時,請不要馬上停手;請盡快將余下的部分粗略的完成以保證這個設計的完整性,然後分析自己的錯誤並重新設計和編寫(參見43);
43.別心急,設計C++的class確實不輕易;自己程序中的class和自己的class設計水平是在不斷的編程實踐中完善和發展的;
44.決不要因為程序“很小”就不遵循某些你不熟練的規則——好習慣是培養出來的,而不是一次記住的;
45.每學到一個C++難點的時候,嘗試著對別人講解這個知識點並讓他理解——你能講清楚才說明你真的理解了;
46.記錄下在和別人交流時發現的自己忽視或不理解的知識點;
47.請不斷地對自己寫的程序提出更高的要求,哪怕你的程序版本號會變成Version 100.XX;
48.保存好你寫過的所有的程序——那是你最好的積累之一;
49.請不要做浮躁的人;
50.請熱愛C++!
補充:
對c++學習的一點感想,希望對初學者能有些幫助
1.假如你以前從來沒有接觸過c++,那麼選擇的第一本c++教程就顯得尤為重要,我認為你可以參照以下的標准進行選擇:
a.對標准c++進行講解,究竟c++比從前發生了很大的變化。
b.要求全面,但不要很深,這要有助於你對於c++有一個全面的熟悉,打好基礎,並且易懂的教材還能加快學習的進度,讓自己保持一種成就感。
c.要有完整的范例來講解每一個知識點如何運用,請注重這裡所說的完整,並不是一個個代碼片斷。因為由於你以前從未接觸過用c++進行編程,完整的代碼可以使你有一個整體的概念,並且能夠很快去進行大量的實踐,因為變編程是從模擬開始,完整的代碼恰恰告訴你了一個完整的步驟。不必自己去揣測。
d.推薦:《c++ primer plus》
2.當你有了一定的基礎以後,就要選擇一些書來迅速提高自己。這類書的特點是不僅僅教你如何去運用,而且要叫你如何去思考,並且你讀起來也不是那麼輕松。它意味深遠,並不是你讀一遍就能把握的。
推薦:《thinking in c++》《effective c++》《more effective c++》
《c++ programming language》...《c++ 沉思錄》
3.接下來就是對第二步所介紹的書籍進行反復的閱讀,並且進行實踐。由於這些書一位深遠,每個人基於自己的基礎都會有不同的收獲,例如假如你的基礎還沒有達到某一高度,那麼你就對一些精深的技術視而不見,不信?你可以試試,看看當自己有了一定提高之後再來讀從前的一本書,你會發現許多新的東西。