vc++学习精髓(收集,整理)
vc++學(xué)習(xí)精髓(收集,整理)
以下是很多VC愛好者的學(xué)習(xí)經(jīng)歷,希望對大家有所幫助:
我記得我在網(wǎng)上是這么說的:先學(xué)win32的SDK,也就是API,
再學(xué)MFC,這么一來呢,就先有個基礎(chǔ),MFC是API的封裝,
如果API用的熟了,MFC上手就輕松的多了。
我覺得呢,現(xiàn)在不少WINDOWS編程入門的好書很多,多買一些,多看看,多想想。不要心浮氣躁。我的經(jīng)驗就是一邊看書,一邊寫程序,看看是不是書上說的那樣。看書看明白了不行,自己做對了這個過程體會就不一樣了,做的多了,就慢慢會有“悟”的感覺。就入了門了。一般從剛開始學(xué)WINDOWS編程(前提是C/C++至少要懂得C的一般常用概念)到基本熟悉,一年時間也差不多,如果在公司里,可能會快一些,主要取決于自己,如果每天都很多時間看書就要快許多。
這是昨天一個網(wǎng)友提出和你同樣的問題。我這樣說的。你說推薦的書籍呢,那倒真是有不少好書非常值得看看,學(xué)習(xí)c++的有《c++編程思想》,學(xué)習(xí)api就是win32程序員參考手冊,一般叫sdk。學(xué)mfc呢,那就更多了,書店里的不少書都可以拿來看看,看的多了,自己也就知道什么樣的書最適合自己,不同時期欣賞的口味都不同的。比如說剛開始,就特別想找vc如何使用的書,剛接觸win32編程就想如果能有手把手那樣的教就好了。這些書都有的。我的習(xí)慣就是,多看書,然后才有鑒別,知道什么樣的書算是經(jīng)典,什么樣的書盡管沒多大用,但是對特定的人,特定的時期,特別有用。
買更多的書,看更多的書
其中《Visual c++ 技術(shù)內(nèi)幕》和《深入淺出MFC》不可不買
中國人學(xué)不好VC的原因很簡單:英語非常差,不會看英文版的MSDN/CD,大學(xué)里的教育全是垃圾,設(shè)備又差,許多學(xué)VC的家伙不懂MASM,連WINDOWS Message cycle system 都不了解,學(xué)什么學(xué)???不過不要緊!據(jù)我所知,全球使用C++的人不過30萬,且多數(shù)是用BCB(用控件來寫容易啊!!!???)要知道,根據(jù)MS的資料,它出的書最High class 的一類只不過賣出20萬左右,(ps:I forgot bookname!!!)要想學(xué)好VC,先學(xué)好英文,再去
Codeguru.com之類的網(wǎng)站D/L source code !不要買國人自己編寫的書(翻譯的除外)最好是MS出的書,既然是用MS的工具,這是當(dāng)然的,還要定期買MSDN/CD,MS的人開發(fā)人員每人一套!!!!要談的太多了,一句話:
學(xué)好VC=英文好+基本功好+勤奮+聰明.少一不成的啊!!!!
我覺得初學(xué)者先不要看MFC,API,Windows編程之類的東西,最重要的是先弄懂什么是面向?qū)ο?#xff0c;什么是類,要是弄不懂類拿學(xué)起來就真的累了!
1.先找一些傻瓜書,一步一步教你,CLASSWIZED,單擊,雙擊,右鍵...,...加入函數(shù)代碼....編譯,運(yùn)行...(真正的傻瓜!)
2,分析代碼,頭文件,消息宏等,找來書慢慢研究吧.哦,這函數(shù)有這些參量.....哇,老兄,WINMAIN()是做什么的???????指針,類,繼承,重栽,折構(gòu)......
3.書書....<<VISUAL C++ 技術(shù)內(nèi)幕 第五版>>,95元,<<深入C++類庫編程...>>,SAME圖書,什么,105元...
清華,希望,機(jī)械,電子,什么出版社......
4.郵箱--->WYY,小輝程序員之路,VC++王朝更換通知....,郵件列表???
5,Building....
75435465734個錯誤,584764576857684警告???????
哪位兄弟快發(fā)郵件給我啊,我受不了了!
媽呀........
說起來我學(xué)VC也有些年頭了,想當(dāng)年玩了3年游戲卻在大四為了畢業(yè)設(shè)計開始接觸Windows編程。沒辦法,天生的手短心長,導(dǎo)師原來要我用DOS環(huán)境的。偏偏一開始有抱的是MFC,有一點(diǎn)C++基礎(chǔ)的我看得是兩眼發(fā)黑。當(dāng)然,設(shè)計是泡湯了,還好導(dǎo)師放我一馬。
工作以后才切身感受到,學(xué)Windows編程是要從API,從SDK玩起的。這還是我當(dāng)年去一家臺灣游戲公司面試的慘痛教訓(xùn)。我那個時候因為默不出一個完整的WinMain()和WindowProc(...) Windows SDK程序架構(gòu)慘遭淘汰(其實(shí)現(xiàn)在大多的Windows游戲還是用SDK的)。
在我看來,寫Windows程序的人對API不了解是不可想象的。我現(xiàn)在還沒有用VC編出一個我自己認(rèn)為象樣的東西來,但我還是堅持用我的業(yè)余時間去和她增進(jìn)感情,也許,這是一個技術(shù)人的老毛病吧。刨根問底,對Windows也不放過。
還有,就我覺得,語言這個東西其實(shí)就象老媽廚房里的各種菜刀,各有千秋的。人天生的對東西會產(chǎn)生偏好,但拿水果刀切菜和拿大菜刀削水果是一樣吃力的。我以前也認(rèn)為天下有了VC就已足夠,可現(xiàn)在兩樣。
有人說過,存在的就是合理的......
各位友人,我覺得學(xué)VC,熟悉C++的面向?qū)ο笈cWINDOWS編程技術(shù)是必要的.另外多看看別人的源代碼,弄清程式所來龍去脈也,弄清程式的運(yùn)行機(jī)制格外重要.至于你不太熟悉API,我看這并不重要,因為這么多API,試問誰能記這么多,不知道的查MSDN.初學(xué)者切莫心浮氣燥,循序漸進(jìn),相信他日
你也是VC"高手".
不過,想精通VC還沒有這么簡單,我以什么VC,VB,BCB...
只不過編碼工具,大家不必拘于此.VC確實(shí)是一把好劍,像獨(dú)
孤九劍也是一把劍,但沒有一點(diǎn)內(nèi)功,這把好劍不是那么好用的.
我覺得學(xué)任何語言都無所謂,關(guān)鍵是要掌握程序設(shè)計的核心——算法和數(shù)據(jù)結(jié)構(gòu)。各種語言和開發(fā)工具就好比各門各派的武功招式,而算法和數(shù)據(jù)結(jié)構(gòu)則好比內(nèi)功心法和武學(xué)原理,內(nèi)功高強(qiáng)了,任何招式到了手上都能化腐朽為神奇,掌握了武學(xué)原理,則能無招勝有招。所以,建議大家多花點(diǎn)時間學(xué)習(xí)基本功,一味地追求各種開發(fā)工具的開發(fā)技巧是沒有意義的。因為各種開發(fā)工具會不斷地更新,比如今天你在學(xué)C++,明天微軟搞了個C#,你又得跟著學(xué)C#。但是如果基本功扎實(shí),掌握了程序設(shè)計的核心思想,不論什么語言都可以很快上手,無論何種開發(fā)工具學(xué)起來都事倍功半。我并不是否認(rèn)學(xué)習(xí)各種語言和開發(fā)工具的必要性,只是要提醒各位初學(xué)者,學(xué)會C++語言或?qū)W會用VC編程并不等于學(xué)會了編程!編程的關(guān)鍵還在于數(shù)學(xué)模型的建立,數(shù)據(jù)結(jié)構(gòu)的選擇和算法的設(shè)計!
內(nèi)功=算法+數(shù)據(jù)結(jié)構(gòu)+編譯原理+*作系統(tǒng)原理+軟件工程+英文
你到 http://www.csdn.net /;;看看,可以找到《深入淺出MFC》2e電子版下載!
有一本書很好《WIN32程序員參考大全》即可了解WIN C SDK,又可以了解WINDOWS,一舉兩得。就是有好幾本。可以到VC知識庫網(wǎng)站的電子圖書欄目下載。
我認(rèn)為需要三本書,
1 <<windows 高級編程指南>> 美 Jeffrey Richter.清華大學(xué)出版 99元
2 <<windows 程序設(shè)計>> 美 Charles Petzold 北京大學(xué)出版 160元
3 <<MFC與Windows編程>> 美 Jeff Prosise 是英文版的 北京大學(xué)出版 198元
還有更好的選擇嗎?我不相信!
我學(xué)vc也半年了,c和c++的功底不錯,對vc感覺還可
以。我認(rèn)為學(xué)vc也有些技巧,可以事半功倍。
vc的書要跳著看,先把a(bǔ)pi,windows運(yùn)行的概念看懂,
再看mfc其實(shí)只要你c++學(xué)的好,mfc幾乎沒多少可看的,
就是一些功能的封裝。vc其試只是工具,精華都在windows
程序的流程上。
掌握好概念后,就是狂背各種api函數(shù)和mfc封裝的
成員函數(shù)。
最后就是研究mfc代碼和其它原代碼
我學(xué)vc已有些時間了。但總有的地方不清楚。到網(wǎng)上去問“高手”,老被罵的狗血碰頭,到頭來,還是一頭霧水。后來買到一本好書,
The MFC Answer Book, Solutions for Effective Visual C++ Applications
Author: Eugene Kain
Published by Addision-Wesley
個人認(rèn)為學(xué)習(xí)VC的前提是C++,特別是虛函數(shù)、派生、和指針,余皆不足慮也。
vc 的瓶頸就在于各種api和mfc封裝的函數(shù)調(diào)用。例如你知到
ddx在update()運(yùn)行時默認(rèn)凋用dodatachange(),等等一些函數(shù)刁用。vc順脆是小菜。
vc本身就是傻瓜工具,微軟開發(fā)vc原意就是要縮短
程序員培循時間。可國內(nèi)有人據(jù)燃要用幾年時間來學(xué),真是太可怕了,太可悲了。學(xué)會了只能在windows平臺上開發(fā),那末你那有時間去學(xué)其他平臺的程序開發(fā)。
vc只是工具,關(guān)件在學(xué)windows*作系同,windows
通了,vc最多半年。
勸大家一句,不要在看身末“深入淺出”之內(nèi)的
書了,去找一本專門講vc庫函數(shù)的書看,這才是精通之道。
住:以上經(jīng)驗只試用于,具有很強(qiáng)c/c++遍程能力者。
我覺得學(xué)vc要先從c,c++學(xué)起,然后是api和mfc(英語很重要,不過不用怕,用金山詞霸邊查邊學(xué),等你vc入門后,你的英語閱讀能力也會上一個臺階);
另外我要的經(jīng)驗是學(xué)的時候不要鉆牛角尖,學(xué)語言關(guān)鍵是
學(xué)語法和概念(繼承,重載,多態(tài)性...),其次才是某某函數(shù)怎么用之類的東西.
(學(xué)windows編程一定要掌握消息機(jī)制)
要想學(xué)懂VC必須:
1、找?guī)妆竞脮?#xff1a;《window程序設(shè)計》只看前幾章,看懂
windows的消息機(jī)制,Api的結(jié)構(gòu);
《mfc深入淺出》全面學(xué)習(xí),深刻理解mfc的結(jié)構(gòu)
2、編一個較大型的項目,不停的使用VC,邊用邊理解看
過的東西;
3、經(jīng)常看優(yōu)秀的源程序。
我本來無資格發(fā)言的,因為我也是一個多月前才決定學(xué)VC的。我總結(jié)一下以上n位的發(fā)言(隨便練練指法):
1.在學(xué)vc之前最好能有點(diǎn)其他語言的基礎(chǔ).(沒有也沒多大關(guān)系)
2.學(xué)c++之前不必學(xué)c.(當(dāng)然會c會快點(diǎn))
3.c++的一些概念很重要(如:對象,類,構(gòu)造、析構(gòu)函數(shù),繼承,模板等),最好弄透(怎么弄透,誰告訴我?)好書推薦:<<thinking in c++>>(<<c++編程思想>>screen.width-300)this.width=screen.width-300'>39.00元,適合對c++較熟悉的人.(有沒有適合白癡級的好書,讓我弄透以上重要概念,麻煩介紹一下)
4.API---->MFC.好書推薦:
(1)<<深入淺出MFC>>(<<Dissecting MFC>>screen.width-300)this.width=screen.width-300'>80.00元,701頁.電子書下載:www.csdn.net(不過是繁體版的,有些術(shù)語和大陸不同).購買:www.huachu.com.cn. www.beijingbook.com, 人民時空.(第一家最便宜)
(2)<<inside visual c++>>(<<visual c++技術(shù)內(nèi)幕>>screen.width-300)this.width=screen.width-300'>96.00元,900多頁.最好買第四版的(清華出版,潘愛民翻譯),電子書下載:至今也沒找到(只有第五版,English的),一些網(wǎng)站上說的好聽其實(shí)都是些原代碼(害我下了100多兆的原代碼,這些人建網(wǎng)站干嗎,吃飽了撐地,這里copy一些,那里copy一些不看一下就上傳,有什么意思) .購買同上.
(3)<<windows 程序設(shè)計>>(<<windows programming>>screen.width-300)this.width=screen.width-300'>(第五版,以前的版本叫<<windows95 程序設(shè)計>>我沒找到電子書(www.ssreader.com好像有)和購買網(wǎng)站)160.00元,1346頁 電子書下載:至今也沒找到(只有第五版,English的), .購買同上.
以上的書有人看懂了,說好
有人沒看懂,煩惱
fang說:什么樣的書盡管沒多大用,但是對特定的人,特定的時期,特別有用
我說:盡信書不如無書
5.邊學(xué)邊練,多看MSDN,英語不好的人,會費(fèi)盡一些(我算是完了,真的很傻,以前馬老師對我不錯,想起來真對不起他(對不起的是你自己))
學(xué)習(xí)VC,MSDN既重要也不重要,關(guān)鍵是先后問題。建議你先看 侯俊杰的《深入淺出MFC》,買不到的話可以到我的主頁的電子書下載理去下載。要是你是成都的話就比較幸運(yùn)些,成都有這本書賣喲!!!相信看過這本書后,你就知道該怎么學(xué)VC了。MSDN在電腦城去買,4元一張。一共3張(新版,老版2張)。
好了,先把上面做了!快行動喲!!!
我是一個大一的學(xué)生,讀計算機(jī)的。我對編程很感興趣,我以為可以在學(xué)校學(xué)到好東西,于是就慢慢來學(xué),現(xiàn)在差不多有一年了,誰知連個屁也沒學(xué)到。直到我來到這,被大家的熱情感動了。我決定自學(xué)。后來我聽說有些大學(xué)生能通過高程。于是我就買了[離散數(shù)學(xué)],[C程序設(shè)計],[計算機(jī)英語]學(xué)起來.聽說還要學(xué)[數(shù)據(jù)結(jié)構(gòu)],[*作系統(tǒng)],[編譯原理].請問要學(xué)完這些要多少時間?先聲明我是一個菜鳥.還有應(yīng)該先學(xué)哪些?我正在為此奮斗,希望大家指點(diǎn)小弟一下.
學(xué)VC我認(rèn)為有益下要點(diǎn); 1.要對win95*作系統(tǒng)的特點(diǎn)了解。如:多任務(wù),消息映射等。 2.面向?qū)ο蟮脑O(shè)計特點(diǎn),即類,需要學(xué)好C++。 3.對MFC也要有一定的認(rèn)識。 4.真對一實(shí)際問題深入編程,不投機(jī)取巧,老實(shí)下功。
過去我在VC上下過很大的功夫,光MFC,WIN32API手冊就看過很多遍。我認(rèn)為學(xué)好VC的關(guān)鍵在于對Windows 系統(tǒng)的了解,如果連某個動作對應(yīng)的消息都不知道,又如何處理它了。
VC 進(jìn)階:1. C 語言;2. C++ ,OOP;3. Windows 運(yùn)作機(jī)理,SDK編程;4. MFC類庫,應(yīng)用程序框架編程;5. ActiveX,ATL,COM……每步驟通常需要6個月,最快也得3個月,諸位同意否?
學(xué) VC 或 windows 編程分三 STEP:1. 只 SDK 提供的 Function 作開發(fā),不要Object, 你會知 How to handle Message. 2. MFC 編程, 用 CEdit 等開發(fā).3. 再用 VC如果你有一個別人的好程序, 不妨自己跟著他的思路,從小到大自己完成一遍。好書:<<MFC深入淺出>> 學(xué)習(xí)VC++有相當(dāng)?shù)膬?nèi)容要學(xué),而最后的深度則看個人的悟性與勤奮了。1)掌握最新標(biāo)準(zhǔn)的C++。 如果曾經(jīng)在大學(xué)里自以為學(xué)過C/C++,還對dynamic_cast/static_cast/template/try/catch/throw/stl/...感到陌生,那你該Refresh一下新的ANSI C++標(biāo)準(zhǔn)了。 ----此與VC++無甚關(guān)聯(lián),g++/bcb均有所支持。(2個月)2) 學(xué)習(xí)SDK編程;:-O (6個月) 痛苦是暫時的,必要的,堅持就是勝利! 建議用Lccwin32/Masm32/Tasm編寫小而精的工具軟件; "Windows Programming Guide." "Advanced Windows programming "3) 研究MFC源代碼。(6個月) 不要被一大堆的宏所蒙蔽,just track and dig into it!! 在知道MFC如何擴(kuò)展,包裝SDK之后,自可功力漸進(jìn),不被其MFC系統(tǒng)框架所困繞。 "MFC Internals"4) 研究OLE/COM技術(shù)。 COM/ActiveX技術(shù)是MS的核心技術(shù),只有徹底洞察其理論精髓才可以體會現(xiàn)在的*作系統(tǒng)的技術(shù)趨勢,以不變應(yīng)萬變。 "Inside Ole 2"***幾點(diǎn)建議***:1) Delphi/BCB/VB可以很快構(gòu)筑界面,但對于想真正學(xué)習(xí)、理解系統(tǒng)不是一個好的平臺,但如果有時間讀一讀VCL的源碼,看看Borland是如何封裝系統(tǒng)的,也可借鑒不少。2) 學(xué)習(xí)ASM對理解C++有很大益處。Soft-ICE也是和VC++結(jié)合在一起的好工具;3) 語言本身是皮毛,算法是筋骨;無論高級語言如何發(fā)展,在理解*作系統(tǒng)的基礎(chǔ)上不斷自我創(chuàng)新的能力是源源不斷的;如果精髓一旦了然于胸,選擇何種開發(fā)工具都可以駕御,一見如故了。
總結(jié)
以上是生活随笔為你收集整理的vc++学习精髓(收集,整理)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 实验室服务器18.04LTS+RTX20
- 下一篇: github使用ssh key