如何學習VC++

如何學習VC++

 

原文:http://blog.csdn.net/liquanhai/article/details/5499768程序員

預備知識
     1. VC是一門語言嗎?
     VC不是一種語言,而是一種集成開發環境(IDE)。利用VC,能夠把源程序編寫、編譯連接、調試運行等各個工做放在一塊完成,很方便。若是你學過 8086彙編語言,必定會對其使人吐血的運行和調試方式印象頗深:) .那麼,咱們在VC裏用的是什麼程序設計語言呢? 是 C++。數據庫

     2.MFC是什麼東東?VC和MFC有什麼關係?
     常聽學VC的人提及MFC,有本口碑不錯的書名字就叫《深刻淺出MFC》,那麼MFC是什麼呢?咱們知道,C++是一種面向對象編程(OOP)語言,使用 別人封裝好的類(Class)能夠極大的加快軟件開發進度。而MFC,就是MicroSoft爲咱們提供的一個門類齊全、功能強大的類的集合,它的全稱 是:MicroSoft Foundation Class。咱們日常所說的"學習VC",有一小半內容是指學習MFC的功能和使用方法。那另外一大半呢?- 我不能立刻告訴你,立刻告訴你你印象不深:)編程

     3.什麼是API函數?
     舉個例子吧,若是讓你在電腦屏幕中間打印一行字:"只要想作一件事,就必定有辦法"。你會如何去作呢?在顯示器上顯示任何東西,本質上都是對硬件的操做, 做爲一個普通的coder,不可能也沒有必要去深刻到硬件層來實現這個功能。幸運的是,系統給咱們提供了一系列函數,只要咱們用C語言的方式調用這些函 數,剩下的和硬件打交道的事情就由系統幫咱們完成了。這些函數,就是傳說中的API函數,全稱:Application Programm Interface(應用程序接口)。在咱們上面的例子中,能夠先用API函數GetDC()取得桌面的DC,而後用TextOut()函數輸出文字。事 實上,要想紮實的學好VC程序設計,必定要理解和掌握這些API - 這就是另外一大半內容。

1、思想準備
     真是有趣,學個程序開發還要思想準備?
     我無心誇大學習VC的難度,可是VC的入門比VB之類的難不少倒是不爭的事實。若是你曾經3個星期搞定VB(這裏指入門),那麼VC可能要花三個月的時 間,這種廣泛存在的學習困難差別使得不少人產生嚴重的挫折感甚至最終放棄。固然,具體要花多長時間和你原有的基礎以及我的努力程度有關,稍後我會談到須要 哪些知識。而如今,我只但願朋友們能有這樣一個認識:VC是比較難學的,我須要作好長期學習的思想準備。windows


2、學習流程
     誰都但願經過最短最好走的路到達目的地,學VC的人也不例外吧?然而有一些路是註定不能繞過的,繞過它們,你的知識就會就會變成無根之草,你就會在接下來的學習中舉步惟艱。下面順次列出學習VC所須要掌握的知識:

     1. C++程序設計基礎網絡

     2. Windows程序設計ide

     3. MFC的學習和使用函數

     若是你看到這裏以爲有畏難情緒,請把"1、思想準備"再讀一遍。
     讓我來解釋一下這三個知識點的關係。學習

 

     學VC必需要有C++的基礎。不會C++而能學會VC純屬扯淡。說到這裏我想調侃一下本身,由於我在上大二的時候曾經一時衝動要學VC,去圖書館借了幾本 書回來硬着頭皮啃了半個多月,仍然一頭霧水不知書中所云,遂放棄。如今回想起來,書寫的比較爛當然是沒有學成VC的一個緣由,但關鍵是本身基礎不夠--除 了VB啥都不懂,連"::"是什麼意思都不知道,呵呵見笑了。因此若是你如今還不懂得C++,請務必學C++先。
     若是時間緊迫的話,也能夠速成:至少應該搞明白麪向對象編程的基本概念,好比類/對象/繼承/重載 等等。
推薦書目:利普曼 加.勞喬 著 潘愛民譯 《C++ Primer 》、錢能的《C++程序設計教程》也不錯。spa

 

         有了C++的基礎後,接着應該學習的是windows程序設計。這個部分主要是在瞭解消息機制的基礎上學習大量API函數的使用。首先你須要理解 windows程序的事件驅動機制,而後就是花大量的時間來學習系統提供的API函數,而且使用它們進行簡單的可視化編程。API函數成千上萬,可是也不 用有畏難情緒,只要把經常使用的百十個函數會用就好了。這個部分要佔去你VC計劃中的大部分時間-同時回報也是至關顯著的,當你下大力氣學好了這個部分,你會 發現接下來MFC部分的基礎知識很容易學。

    注意:有很多人畏懼這部分的學習而選擇跳過去直接學習MFC,對此個人見解是:不可取。當你沒有學會走 路時,不要跑,不然每每會摔的很慘。侯俊傑先生說的」勿在浮沙築高臺「也是這個道理。而事實上當你潛心把這部分學好後,你會發現MFC的入門根本就不須要 花什麼時間。世上不少事情是須要水到渠成的,當你付出足夠的努力每每就能夠作成一件事(技術的事情尤爲如此),不須要刻意去找什麼捷徑,古人說「大巧無巧 術, 用巧者乃因此爲拙」,真正的捷徑就是不找捷徑。
     推薦書目:Petzold 的《widnows程序設計》,有中文版的。爲何我只推薦這一本?由於它實在太經典了,一本足矣。.net

     當你終於學會了windows程序設計這個部分,請容許我提早恭喜你,你立刻就要成功了。這時候再來看MFC,你不免會有這樣的感受:哈哈,這不就是對 API函數的封裝麼?誠然,對於初學者來講,無非是用MFC創建個對話框或者單文檔程序,裏面放幾個控件而已,而對控件的操做很大程度上都是用API函 數,不一樣的是,這些函數被MFC封裝了一下,用起來彷佛更簡單一些。
推薦書目:《VC++技術內幕》、《深刻淺出MFC》
     值得一提的是,關於MFC的學習,網上有一個很是好的視頻教程,是 孫鑫 講的。我看過,以爲他講的確實很好,能把前10課看完就算入門了。該視頻共20課,有2.2GB之大,你們有興趣的話能夠買盤或者用BT、電驢之類的下載,一個字:值。

  
    到此爲止,你已經掌握了使用API函數和MFC進行簡單可視化程序的開發,稍加訓練作個簡單的數據庫或者網絡的程序應該不成問題了。×××長征已經順利的邁出了第一步,恭喜你!

3、問答(FAQs)

     問:我不會c語言,有關係嗎?
     答:不要緊。你按照【學習流程】中說的123學就行。

     問:我該裝哪一個版本的VC?
     答:版本並不重要, 就像你吃飯時先吃哪道菜同樣. IDE的使用,一通百通。若是你實在沒有主意非要我推薦的話, 那就裝VC++6.0吧,最好是英文版的.

     問:C++ 和 windows程序設計的學習能夠用VC進行編譯調試嗎?
     答: 固然能夠。具體方法網上找,至關簡單。

     問:VC的代碼量太大,一個最簡單的窗口都要百十行代碼。很差辦啊?
     答:VC就這個樣,習慣了就行了。簡易和靈活是天生的矛盾,VC偏向於後者。

     問:什麼是MSDN?我要不要安裝MSDN?
     答:你能夠把MSDN簡單的理解爲一種函數參考手冊。對於VC程序員來講,沒有MSDN是不可想象的。

     問:API函數和宏定義太多太難記,我該怎麼辦?
     答:高中化學的原子量多很少?難不難記?但我相信當年不少人都記得經常使用元素的原子量。爲何?練的多天然就記住了,別亦無它,惟手熟而。

     問:我學VC好一陣子了,以爲VC太難了,我該怎麼辦?
     答:謝謝, 這是我所遇到的最容易回答的問題:堅持,或者放棄。

     問:若是用一句話來歸納學好VC的關鍵方法,那是什麼?      答:親手寫代碼, 從最最簡單的程序開始, 編程、編程、再編程。

相關文章
相關標籤/搜索