VC++開發(fā)環(huán)境的模式說明
VC++開發(fā)環(huán)境的主要開發(fā)模式擁有兩種模式,一種是WIN API方式,另一種則是MFC方式,VC++開發(fā)環(huán)境主要是針對Windows系統,適合一些系統級的開發(fā),可以方便實現一些底層的調用。
其實,只要踏踏實實一步一步來,學VC++開發(fā)環(huán)境很簡單。對于沒有編程基礎的人首先要學習編程的基礎知識,如變量,語句,基本的算法等,然后寫一些小的程序,實現些常用算法對自己的思維是很好的鍛煉,對以后的學習大有好處。
起碼要能排排序,求個八皇后,算個漢羅塔,再知道一點深、廣度優(yōu)先搜索。如果你已經有一些編程的基礎知識了,自然就可以跳過這步。在對編程有一定的認識之后,就應該開始進軍C++了。注意,C++是一門語言,而VC++開發(fā)環(huán)境則是講解如何在VC++開發(fā)環(huán)境環(huán)境下使用MFC類庫,學習VC++開發(fā)環(huán)境應建立在充分了解C++的基礎上的。
學完了C++,最好先找本Win32編程的書,Win32編程是指用 Windows API編程,MFC是將眾多的API函數進行了封裝的類庫,用起來方便了不少,但如果沒有一些API編程基礎,對相關概念不了解,學起來MFC來可能會很費解。
API函數有2千多,不需要都學。其實只要知道如何創(chuàng)建窗口、對話框、控件、消息循環(huán),了解了句柄的含義就差不多了,最好再了解一點GDI編程。這個階段的關鍵是要理解Win32程序是如何運作的,把握各種窗口間的關系。因為你以后應該很少直接用Win32 SDK編寫程序,所以關鍵是理解整個結構,記住幾個函數并沒有什么意義。函數用的時候可以現查。
打好了基礎,現在進軍VC++開發(fā)環(huán)境的障礙都已經掃清了。不過還是應做好充分的思想準備,事情不會那么順利的。剛開始你就要面對一個瓶頸,大量的緊密關聯的知識,使你必須一下理解一個整體,而很難一點點來??梢哉f學VC++開發(fā)環(huán)境最難得就是剛開始。
情況有些類似于第一次創(chuàng)建窗口時面對的那長長的程序,很多人就是在此被它難住,放棄了學習。事實上,這幾乎是 Windows編程的一大特點,突破了這個瓶頸之后便是一片海闊天空,而有著扎實基礎的你是一定能闖過去的。建議不要等徹底弄明白一句才看下一句,等能做出個菜單、對話框時便回頭再看一遍,幾遍之后應該就可以大概明白MFC程序的運作了。
這里有個關鍵,一定要用心體會面向對象編程的精神,努力將眼前的程序與之前的知識聯系起來。通過比較成員函數和對應的API函數間的區(qū)別,嘗試去理解MFC是怎樣封裝相關的API的。例如,相當多的宏,看起來很奇怪,但你不必理會其實現方法,只要知道如何使用便可,這點也很重要。還有,對于其生成的代碼要自己進行分析,偷懶就不能真正理解MFC。
這是我一個人的學習經驗,但經驗要因人而異,所以還需要根據個人的情況決定。開始時,教材讓怎么辦就怎么辦,比貓畫虎的做出個菜單、對話框,然后試著添加控件。等到不看教程便做出這些時,開始逐字逐句的試著理解MFC程序的組織。#t#
若看不懂就跳過看下面的。就這樣一遍一遍來。如果覺著頭大就先歇上2天,等清醒了再接著來,最好在這期間多找些介紹MFC框架的文章。然后便可試著寫個定時器、名片夾之類的小東東,熟悉一下各種控件的使用。
突破了開始的瓶頸之后再學下去便會越學越容易,因為你可以一點一點的積累知識,而不用擔心被卡著了。再過不久,你就可以使用API函數完成一些功能,如在系統托盤加圖標,自畫列表框等。這時,你也會體會到學習Win32編程的好處了。
最后,建議有時間的話研究一下各種算法。數據結構是一定要看的。不一定要記住,但至少要知道有那么回事,萬一碰到問題可可以知道問題出在哪里。其實,常見的鏈表等結構以及排序等算法在VC++開發(fā)環(huán)境中已經實現了,不用你去費勁,但有些了解總是有好處的。至于離散數學、線性代數什么的,對于復雜的算法是必要的,其中離散數學是數據結構的基礎。