vc開發入門
『壹』 學習vc++怎麼入門 啊
哎,導師讓你學VC ,恐怕是要你給他打工了,幫他做項目。
整整規規的學C/C 軟體,最好使用GNU C/C 編譯器。
1.首先是結構化編程,即C語言和數據結構;
2.然後是面向對象編程,既C ;
3.然後是掌握STL標准模板庫的應用; 《== 注意完成在此步驟之前,連入門都不算的。
4.然後才是掌握一種開發工具,比如VC ;
5.然後才是逐步學習網路、資料庫、界面相關的內容; 《==這個時候可以寫點應用軟體了,算是出師。
6.選擇你自己感興趣的一個方向,深入發展。 《==完成此步驟,你也就算專家了
明白了嗎,導師讓你直接學第4步VC ,典型的殺雞取卵。
結論:
1.如果你想學習1~3步,打下好的基礎,推薦《C 程序設計語言(特別版)》/(美)斯特朗斯特魯普 著 裘宗燕譯 機械工業出版社
潭浩強的那本垃圾可以扔了:)
2.如果你想直接第4步,首先要知道VC 開發,有五個不同的開發框架,它們是:
win32 API,直接使用過程式API,編程效率低;
MFC,微軟基礎類庫,一個基於宏,富餘花巧,最易用的,被淘汰的開發框架;
ATL,活動模板類庫,一個基於泛型,更加花巧,更難用的開發框架,唯一的優點是編譯出來的控制項體積小,適合網路下載(不過現在很少有人這么做);
WForm,搭配C#和.NET平台的框架,易使用,不過好像也快屬於淘汰之列了;
WPF,一套用XML描述界面的框架,靈活性高,屬目前正主推的方向。
目前,國內學術界用得最多的MFC,因為它最易入手,最適合短期培養軟體藍領,最受大學教授青睞;其次是WForm,在追捧.NET的企業界用得比較多。
推薦《Visual C 技術內幕》(美)DAVID J.KRUGLINSKI
譯者:潘愛民;王國印。它主要是以MFC為基礎的。
3.學習MFC有個好處,它是開源的,直接閱讀MFC代碼可以讓你學到很多面向對象、編程風格的東西。但MFC濫用了宏,除非你確實需要使用宏,否則,關於宏的一切,藐視之。
4.不管學習VC 哪種框架,書籍只是用來入門的,最終的正道是,MSDN在線文檔,當你腦海中記住了MSDN左邊那顆目錄樹結構時,所有VC書都可以扔了。
『貳』 vc++入門看哪本書好些
VC++的編譯語言是C++,開發目標是Windows程序,使用的基礎類庫是MFC。所以要學會使用VC++編程,下面的幾項課程是必須掌握的:C++語言、Windows編程、MFC。
我建議的順序是C++語言---->Windows編程---->MFC,這是因為:
C++是最基本的語法規則,毫無疑問是我們掌握如何與計算機交流的第一步。由於我們的開發目標是Windows,所以要掌握Windows編程的原理以及Windows提供的應用程序介面(API)。而MFC本質上是以C++面向對象的方式對WindowsAPI進行封裝,如果不理解Windows編程的一些重要原理,比如API調用、消息處理機制等等,僅學習MFC必然只能理解得很片面,模稜兩可,即使知道怎樣做也不知道為什麼這樣做。
下面列出一些公認的經典書:
The C Programming Language----------Brian W.Kernighan,Dennis M.Ritchie「介紹標准C語言及其程序設計方法的權威性經典著作」---
C++ Primer----------Stanley B. Lippman「幫助全球無數程序員學會C++」---
Windows 程序設計(第5版)-----Charles Petzold「windows編程泰山北斗」---
Windows核心編程----------Jeffrey Richter「windows編程泰山北斗」---
Windows高級編程指南---------Jeffrey Richter「windows編程泰山北斗」---
深入淺出MFC(第二版)-----「MFC四大天王」-------侯捷
MFC Windows程序設計(第2版)---MFC四大天王」---------Jeff Prosise
Visual C++ 技術內幕(第4版)--MFC四大天王」--------David Kruglinski
深入解析MFC-------------MFC四大天王」-----------George Shepherd
這些書籍包括其作者都是響當當的。
如果你不打算深入研究編程,而只是作為臨時任務的工具的話,看一些應用方面,有很多例子代碼的書就行,比如孫鑫的《VC++深入詳解》,或者一些其他的大部頭工具書。如果想研究編程,深入理解MFC的工作機制,首先要精通Windows編程。《Windows 程序設計》是較為基礎的,實例代碼很多,《Windows核心編程》和《Windows高級編程指南》就比較拔高了,涉及很多操作系統的知識。掌握Windows編程後再研究MFC就輕松多了,它就是對WindowsAPI的封裝,侯捷的《深入淺出MFC》講得蠻細致深入。
『叄』 C語言編程入門題目(VC++6.0)
你的scanf語句輸入a、b、t 這3個數的值,而在窗口裡輸入了1. 2,中間的.不能有的,輸入的時候只能用空格或者回車來區分。
另外t的值不需要從窗口輸入。
『肆』 VC++6.0的入門書籍
你說是如何用VC6.0開發程序,還是說如何用VC(對初學者來講不管什麼版本都差不多)?
我覺得如何使用VC6.0的話,你可以去書店隨便翻幾本書的開始部分,都有介紹的,譬如1個星期去1次書店,每次去用不了1個小時。去個3次基本上就能操作VC了。但是VC里有很多其它的東西要配合計算機其它知識我們才能用的,譬如VC中有很多鏈接器開關,像/STACK:n, m等,沒有其它的知識是無法理解它,更別提使用了。
至於說用VC開發程序的話,建議先學(JEFFREY RICHTER)WINDOWS核心編程的內容,明白了WINDOWS的消息機制和WINDOWS基礎知識及一些普通API後,然後看MFC比較好些。至於樓上說的「VC++深入詳解」和「深入淺出MFC」,的確是經典的東西,可我不贊成先學。
如果樓主點贊了我的意見的話,我只想提醒一句,看JEFFREY的書需要有耐心的,但能消化其中的50%,應該上MFC沒問題了!
另外,JEFFREY的書學習的話,他沒告訴我們先看什麼,後看什麼(並不是從第一頁看到最後一頁的)。
首先需要准備好VC6.0,但6.0的SDK包是比較舊了,很多API函數沒有,因此不用新的SDK,JEFFREY的程序會出錯。VC6.0需要另外下載新的SDK,如果用VS2005後的版本的話,就沒有這個問題。JEFFREY的附錄需要優先看(在你碰到書中給出的第一個例子--Error Show時,就應該配合附錄一起看)。
『伍』 如何vc 快速入門
(一)我現在理解的C++
種種原因,很多精力要投入到java的學習和使用中去了,想形成一個學習C++的系列文章,沒有什麼風格,也沒有什麼時間表,想到哪就去寫。這里把以前自己另外一個ID發表的一篇文章的一部分作為這個系列的第一篇,算是開頭吧。
學習C++重在理解其各種語言設施所代表的語義,以及C++所能表示的語義所代表的設計思想。首先從宏觀上入手,你需要明白的是C++是程序設計語言的本質。在此我把C++最重要的性質寫下來:C++是一門靜態類型檢查,基於C內存模式,支持四種基本程序設計范型的語言。注意,這里說明了三個本質特性,靜態說明了語言的類型檢查性質,基於C內存模式告訴我們在C++中所有與內存有關的操作都需要程序員自己來負責,這樣就帶來了很多設計程序時的需要注意的地方,而理解支持的四種基本范型卻是理解各種語言設施的基礎。然後記住C++的最大的一點設計哲學,也是其貫穿應用C++的一條本質,我引用《C++ PRIMER》中文版前言內的一句話表示--「C++的基礎是各種設施,它們讓用戶能夠通過定義新的數據類型來擴展語言本身,這些新類型可以與內置類型一樣的使用方式(如何理解這句話是關鍵,我的理解是:用戶定義類型可以在任何使用內置類型的時候做為其替代,再具體點說就是用戶定義類型可以象內置類型那樣可以被聲明,其對象可以被初始化,可以相互復制,可以象內置類型對象那樣和很多操作符一起使用,可以被作為參數傳遞給函數,可以作為函數的返回值,可以作為容器的操作對象,用戶定義類型可以和內置類型一樣作為模板的參數),掌握這些設施(哪些設施?就是讓用戶定義類型可以和內置類型一樣方便使用的設施,包括什麼?構造,拷貝,解構函數,操作副重載.....)的第一步就是理解基本語言(什麼是基本語言?就是C++中better c部分)。
在此,我還想提出一點十分重要的概念:一門語言的最本質的東西就是其類型系統,任何語言都有自己的獨特的類型系統,學習C++就是學習他的類型系統。所以首先需要徹底明白什麼是數據類型這個概念。這樣你的思路就清楚了,你有選擇,從每一種C++支持的設計范型入手學習。
結構化設計-----也就是C++中的better c部分,你需要在C的基礎上學會函數重載和引用這兩個最重要的語言新特心性。
基於對象----你需要建立C++最強大的概念--類,也就是用戶定義類型,這其實就是數據結構裡面接觸的抽象數據類型的概念,以及合理構造使用類的一系列語言措施。並始終記住,在C++進行設計時用類來表示我們需要表示的概念。類也是C++抽象機制裡面最核心的概念。
面向對象----在這里你需要知道繼承和多態這樣的OO概念,以及句柄類這樣常見的設計技術,這里你需要明白你開始進入了對介面編程的階段。同時你要學會OO思想,C++的一些設施只是為了把OO思想在語言所支持的語義中充分的表示出來。但是在這里,同時你需要明白的C++能表示的語義是受到其當初語言設計原則限制的(什麼原則?靜態類型檢查,不為不需要的東西付出代價,選擇權在程序員手上語言本身不去強迫程序員的做出選擇),也就是說C++所能表示的OO思想可以稱為具有C++特色的OO思想了。這樣的OO思想和JAVA所代表的純OO哪個更好?沒有定論,因為他們本身的設計理念就不一樣。
泛型設計----這里你需要明白最重要的一點是C++的temlate機制無論其開始建立的初衷是什麼,現在他所代表的真實含義是:編譯時類型推導,也就是編譯時多態,由此明白了泛型的核心---把各種類型當作一種抽象條件的具體化,C++有措施可以定義抽象條件嗎?沒有,所以這些條件只能定義在我們自己的心中,但我們可以把具體化的類型當作一種抽象條件實現在template機制中去,從而使tempalte成為比類型推導機制更進一步的東西,那就是抽象條件的推導。也就是說,我們不再把template接受的參數看成是類型,而是把template看成是一種接受抽象條件的機制,無論其類型如何,只要這種類型滿足tempalte所接受的抽象條件就可以作為參數傳遞進去,這樣就代表了一種泛型的思想-----類型不再是根本,抽象條件才是,類型不過是抽象條件的外衣和在C++中的實現方式而已。在結合基於對象和泛型設計這兩種抽象設計模式的技術上誕生的工業產品就是---STL。
(二)書的誘惑
《C++程序設計語言》:如果你只買一本C++書,這本就是你的選擇,作者Bjarne就是讓你做出這樣選擇的全部理由,沒有人能比他更了解什麼樣才是真正的使用C++編程了,有人說到這本書語言晦澀,或者對與初學者此書不適合,對此評論我頗不以為然,我看的是中文版,起碼在我看來語言描敘非常到位,我喜歡這樣的技術描敘風格。全書的核心就是告訴你如何去用正確的觀念編寫正確的C++的代碼。強烈推薦。
《C++語言設計與演化》:這本書也是我同時擁有中英兩版的兩本書之一(另外一本是《設計模式》)。如果在得到上面的那本書之後你需要第二本,那麼在我看來這就是你的選擇,作者同樣是Bjarne,他將在這本書中告訴你C++的起源與發展,語言原則與本質,各種特性加入的理由和考量,以及幾乎一切關於C++有趣的故事。我閱讀過中英兩版,都是強烈推薦。
《C++標准程序庫》:在AMAZON上面關於C++書籍評論最為火暴的一本。全書對於標准程序庫的介紹可謂深入淺出,而且全書都是從實際運用出發,書中例子簡單卻非常說明問題,加上一些圖表的陳列,使其概念十分清晰,而且從手冊和學習兩方面看都有其存在價值。強烈推薦。
《EFFECTIVE C++ 中文版》:無須多說,在任何C++書籍推薦目錄中都可以找到這本書的身影,盛名之下必無虛士。主要強調的是運用C++的各種特性的時候所必須注意的地方,以及一些比較通用的設計手段。其短小精悍的語言自然非常適合快節奏的現代風格,個人就十分喜歡Meyer的寫作方式。強烈推薦。
《MORE EFFECTIVE C++ 中文版》:做為上本書的姐妹篇,一樣的寫作風格,一樣的寫作目的。只是個人認為和其姐姐相比,存在差距,主要是信息量沒有《EFFECTIVE C++ 中文版》那麼大,主要說到了一些C++的設計慣用手法。推薦。
《C++ PRIMER 中文版》:同樣是出自大師之手,作者LIPPMAN,作為早期C++編譯器的實現者之一,對與C++的了解以及該如何論序都有自己的獨到見解。做為C++的網路全書和《C++程序設計語言》有著一樣的地位。但是前者更強調的是C++的語法和其語義,而後者則是以如何用C++進行合理設計做為描敘的中心。全書構思十分巧妙,書的一開始就直接進入C++的主題,前面五章都用類設計一個數據結構,讓讀者完全明白了各種用戶定義類型所代表的抽象能力,然後直接進入第六章標准庫中的容器類,這樣的設計讓讀者十分清楚的建立容器和類這兩個C++中十分重要的概念。這樣的設計針對有一定基礎的C++讀者來說可以說是非常有效果的。但是對於初學者來說,這確實不是一本合適的書籍,因為一上來太多的名詞會把剛剛接觸C++的人嚇著的。推薦。
《C++沉思錄》:非常有特點的一本書,全書假設讀者已經通曉C++語言,重點告訴讀者C++的概念以及一些C++的設計手段,比如用C++到底為什麼會比C或者其他過程語言更好?(書中給出的答案是,因為只有對象才有能力保持一定的狀態,而演算法沒有這樣的能力),如何進行抽象數據類型的程序設計,如何理解多態,如何通過代理隱藏繼承,如何進行引用技數,為了效率如何進行緩時拷貝,以及模板技術是如何發展演進最後構成成STL庫的。閱讀感覺和《C++程序設計語言》一樣,思想性非常強,讀這樣的書很累,腦子必須一直思考問題,思考作者裡面提出的問題和他提出的解決方式。這本書最大的特點是非常直接的把C++語言的核心暴露出來-----三種抽象模型和極其語言設施本身對這三種抽象模型的支持。而《C++沉思錄》給我的更深層思考是什麼才是運用C++最合理的方式。推薦。
《C++ STL中文版》:很朴實,不花俏,但是價值很高。個人認為其主要價值體現在以下幾個方面:1,對於STL的實現關鍵iterator一般都使用了兩種方式描敘,一種比較老式的函數方法,一種是新的?traits技巧,這樣讀者可以非常清楚的知道技術的演進。2,提供了一個STL LITE版本,閱讀這樣的代碼對自己的提高非常大。3,書中提供的測試模塊對於讀者來說也是非常有的一章,對於想擴展STL的,可以按照上面提供的方法測試自己的STL組件。缺點:裝訂比較粗糙,與大師之作的地位不相稱。推薦
《C++ PRIMER PLUS 中文版》:一本思想性不是很強,技巧性不是很強的書,但是對於初學者來說非常合適的書。其中許多論序方式都和具體化,總體來說,這本書是我看過的C++書籍裡面最合適初學者的。推薦。
《深度探索C++對象模型》:這也是一本比較特別的書,告訴你編譯器是如何安排處理對象的內存空間的,以及一些OO特性是如何實現的。不認為這是一本C++必須讀物,算是課後讀物應該比較合適吧,因為有時間了解C++的OO實現還不如花點時間搞清楚OO理論的本質概念:type theory。推薦。
《C++設計新思維——泛型編程與設計模式之應用》:可謂C++中的奇書。這樣的一本書,很難讓人做出正確的評價與推薦指數(尤其是以我這個實用和人生本就應該享樂為人生觀的人來說~:),因為全書所代表的思想前衛到了有點不切實際的地步,模式+泛型—多麼高雅的組合。我個人的觀點是,只有一部分人需要閱讀此書,他們就是所謂的real c++ fans,暫且不提C++本身是否遇到了困難,就其書中所代表的設計思想,對於C++沒有一點感情的程序員(感情就是以愛好為基礎,而不是以攢錢為前提),我想對於這樣的設計技術總會有暈的感覺,而一般程序員多半都不會喜歡這樣的感覺~:)。推薦。
《對象揭秘:Java、Eiffel和C++》:從書名就可以看出這本書不僅僅和C++有關系。可以說全書就是對C++的一次批判吧(書也起源與作者的一篇批判C++的文章)。有時候聽聽另外一種聲音對自己保持清醒的頭腦是非常有幫助的,對待一個人,對待一本書以及對待一門程序設計語言都是如此。這本書好象不是很火,大概跟其宣傳不是很到位,或者同能同時了解這三門語言並比較關心這些語言深層次的優略的讀者比較少有關系吧,在我看來這本書包含了許多對象與類型方面的理論,最為出彩的就是作者抓住Bjarne的「在C++中一個類就是一個類型」這樣的「錯誤」言論狠批的論證過程。看這本書另外一個好處是能教會大家該如何去合理的辯駁自己的對手~:)。推薦。
《大規模C++程序設計》:書在手上很久了,可一直沒有仔細看,這也是評論之前必須說明的。總體看來書中涉及的很多東西都鮮見於其他讀本。不管AMAZON上的評論是否是這本書比較過時,起碼它介紹的許多對與我來說都是我所不知道不了解的,別人說過時是他的事情。而我,還是推薦。
《STL和泛型編程》:難得的一本關於泛型編程的理念書籍,同樣也是作為手冊和學習兩用,但是其手冊不是使用手冊,而是概念手冊,對於設計自己的STL組件,這本書有非常好的幫助,雖然網上有篇STL的文檔,其中的70%內容和這本書雷同,但此書仍不失可讀性。推薦。
《C++編程思想 第二版》:非常一般的書,是的這就是我對這本很多人奉為名著的評論,至於為什麼是這樣的評論,或者你不相信我說的是客觀話,在你買了之後看完就知道了。一般。
《Essential C++中文版》:總感覺這本書定位不是很清楚,因為對於初學者來說其開始就涉及了太多的名詞,初學者看這本書,幾乎就不要指望能很好的入門。而對於進階者來說,其內容並無新意,對於C++高手來說,這樣的小讀本,根本就沒有閱讀的必要,也許是LIPPMAN+JJHOU的盛名吧,但我覺得這次算是有虛士了~:)。一般。
《STL源碼剖析》:侯SIR的大陸兩本著作之一,但在我心中其質量好象並不如很多人說的那樣好,就同類作品《C++ STL中文版》相比較內容略現單薄,並且三章之後很多東西都給人以堆砌的感覺,而且大部分精彩的材料都出自《STL和泛型編程》一書,給人感覺書中侯SIR自己的東西並不多,但第二章對於內存管理有很好的論敘表現,並且裝訂精良,尤其是那些圖更是侯SIR的拿手好戲,但總體感覺有點華而不實。一般。
後面列出兩本不推薦的,具體原因也就不再分析。
《高質量程序設計指南--C++/C語言》,《C++編碼規范》
另外兩本常見的C++書籍:
《Exceptional C++中文版》,《More Exceptional C++中文版》我本人並沒有閱讀過,但其名聲不小,而且加之曾經給此書作者Herb Sutter通郵件的經歷,那種考慮到時差都不到24個小時的回信率以及在信中耐心的對技術講解的態度,同樣向大家推薦這兩本書,因為在我看來Herb Sutter能力無須考慮加上這樣待人的態度,其作品理所值得大家閱讀。
是的,上面就是我大半年來看過的C++的書籍,肯定不少人要嘲笑我的個書獃子了~:),其實我確實就是一個書獃子,至於是否需要看這么多書,我個人意見是不需要,不然我還給出推薦等級干什麼?選擇自己需要的就是最好。引用曾經有人說到的---評書其實就是個「如人飲水,冷暖自知」的事情。真正的書評在哪裡?各自的心裡。
轉載自論壇:忘記名字了
『陸』 學vc++游戲編程需什麼基礎
首先你要會,windows下程序的運行原理,會windows窗口應用程序設計,寫windows窗口應用程序:
a最常用的就是MFC編程
b或用platform sdk (也就是windows api)
MFC是對windows api的類封裝。
然後你就可以寫掃雷,五子棋這樣的程序了。
如果你想寫那種網游里的效果。那就路漫漫了。
找本directX的書看看吧。用opengl也一樣,會了這個,不難會那個。
openGL,還是directX了,兩個函數庫直接控制顯卡,
『柒』 學VC應該怎麼起步(學過c++)
一、VC是什麼?學VC是學什麼? (轉載)
首先VC是一個軟體(IDE集成開發環境)(編譯、編輯、調試)
C和C++。但C++中的有些特性是不用的,例如I/O流,多態繼承
WindowsSDK(軟體開發工具)
VC的靈魂:MFC(微軟基礎類庫)
ATL(ActiveX模板類庫)
其他的SDK,如OpenGL,DirectX,ActiveMoive,DrawDib(WinG)
VC是許許多多技術的綜合,就好象少林72般絕技,一般在應用中學會其中很少一部分就夠了。我們的現在目的,其實不過是學一套少林長拳。這套長拳應包括:
1、養成一種嚴謹的軟體開發習慣,熟悉軟體工程的基本原則。
2、C語言基礎
3、C++最基本內容:類、繼承性、封裝性、多態性的概念
4、如何用向導建立一個程序框架
5、設計菜單
6、設計工具條
7、設計和使用對話框,熟悉最常用的對話框控制項:按鈕、靜態文本、編輯框等
8、知道怎樣新建類、成員函數、成員變數、消息處理函數。
9、了解最常用的Windows消息:如WM_PAINT(重繪窗口),滑鼠按下、彈起、移動,初始化對話框,等。
10、了解最簡單的GDI(圖形設備介面):寫文字、畫框、畫點、畫線、畫圓,設置畫筆、畫刷。
11、熟悉最常用的MFC類:
CWnd
CDocument
CView
CDC
CDialog
CWinApp
CGdiObject及子類
CString、CPoint、CRect、CSize等簡單數據類型
CFile
以上提到的這些內容,是每個人都會用到的內容。
二、MFC簡介
上述主要內容都是與實際操作關系非常密切的,在此不可能講清楚;而且,這些在一般的書里都會講到。我主要將最重要的MFC介紹一下。
MFC是對WindowsAPI的封裝,大大簡化了我們的工作;學VC主要就是要學MFC,大約有100多個類,但常用的也就二三十個。應該象背4級單詞一樣將這些常用類搞懂;當然不要死記,要通過看幫助、看例子、動手練習來學會它們;而且,並非每個類的內部的所有函數都要學會,要日積月累。如果真的想成為高手,做個筆記本把自己認為重要的類、函數記下來,隨時學習,也是很好的突擊方法。
下面介紹最重要的MFC。
CWnd:窗口,它是大多數「看得見的東西」的父類(Windows里幾乎所有看得見的東西都是一個窗口,大窗口裡有許多小窗口),比如視圖CView、框架窗口CFrameWnd、工具條CToolBar、對話框CDialog、按鈕CButton,etc;一個例外是菜單(CMenu)不是從窗口派生的。該類很大,一開始也不必學,知道就行了。
CDocument文檔,負責內存數據與磁碟的交互。最重要的是OnOpenDocument(讀入),OnSaveDocument(寫盤),Serialize(讀寫)
CView視圖,負責內存數據與用戶的交互。包括數據的顯示、用戶操作的響應(如菜單的選取、滑鼠的響應)。最重要的是OnDraw(重畫窗口),通常用CWnd::Invalidate()來啟動它。另外,它通過消息映射表處理菜單、工具條、快捷鍵和其他用戶消息。你自己的許多功能都要加在裡面,你打交道最多的就是它。
CDC設備文本。無論是顯示器還是列印機,都是畫圖給用戶看。這圖就抽象為CDC。CDC與其他GDI(圖形設備介面)一起,完成文字和圖形、圖像的顯示工作。把CDC想像成一張紙,每個窗口都有一個CDC相聯系,負責畫窗口。CDC有個常用子類CClientDC(窗口客戶區),畫圖通常通過CClientDC完成。
CDialog對話框
CWinApp應用程序類。似於C中的main函數,是程序執行的入口和管理者,負責程序建立、消滅,主窗口和文檔模板的建立。最常用函數InitInstance():初始化。
CGdiObject及子類,用於向設備文本畫圖。它們都需要在使用前選進DC。
CPen筆,畫線
CBrush刷子,填充
CFont字體,控制文字輸出的字體
CBitmap點陣圖
CPalette調色板
CRgn區域,指定一塊區域可以用於做特殊處理。
CFile文件。最重要的不外是Open(打開),Read(讀入),Write(寫)
CString字元串。封裝了C中的字元數組,非常實用。
CPoint點,就是(x,y)對
CRect矩形,就是(left,top,right,bottom)
CSize大小,就是(cx,cy)對(寬、高)
三、用好MSDN和例子
作為提高,推薦看的例子有:
nHello最簡單的程序框架
nScribble滑鼠繪圖。教程:編程基礎,GDI
nDiblook圖像處理最簡單範例
nMFCIE網際網路瀏覽器
nEnroll資料庫
nDaoviewDao(數據訪問對象)範例。樹型和列視控制項
nCubeOpenGL範例,畫一個不斷旋轉的方塊
nHierSvrOLE伺服器
nOclientOLE包容器
nDrawcli滑鼠繪圖。也包括OLE。
nWordPad寫字板。OLE
四、幾點經驗
A.為什麼要用Windows而不是DOS編程
Windows編程並不比DOS編程難很多,只是在剛剛接觸的時候感到頭緒繁多,不知從何下手。實際上,如果你會C語言,你會發現Windows編程的難度並不比當年學C語言時大。DOS編程要想成為高手,也需要學習幾百個函數(無論是TC、BC、MicrosoftC),並要深入了解匯編語言級的DOS功能調用。而現在在Windows下,付出相同的工作量,你卻可以獲得幾倍的收益。如果你以前熟悉DOS編程,現在再搞Windows編程,只要兩個星期肯定會感到巨大的優越性:在DOS下,每一件事都要自己干,而且還有64K內存、顯示精度等的限制,實在是事倍功半了。
B.為什麼要用VC而不是其他Windows編程語言
n大多數大型軟體(包括Windows自己)都是用C、C++編的,所以可以利用的源代碼特別多。例如Photoshop,就有VC的編程介面。的其他的語言都不如VC有歷史優勢。而且VC的開發工具特別多,從控制項公司到硬體開發商,其產品很少敢不提供VC介面的。
nVC適合組織大工程(VB就不行)
nBorlandC++或C++Builder也很不錯,並不比VC差。但BC的版本兼容性不好,從3.1到4.0就出現「代溝」,而且VC提供了極為豐富的文檔和範例,VC的參考資料也遠比BC多。並且VC與其他的VisualStudio成員可以協調工作,對軟體工程有利。
n
C.開始不要學WinAPI編程,但以後最好學學WinAPI
特別要注意,開始不要買講WindowsSDK編程的書。一個臭名昭著的例子就是「HelloWorld」。各種計算機語言在入門課中往往都給出一個例子,顯示一行文字「HelloWorld」,無論是在Basic、C、Pascal,甚至匯編中,這個最簡單的小程序都幾行就可以寫完。但在早期的Windows編程中,剛才講到的「HelloWin」這個有名的例子就要組織一個工程、寫上幾百行代碼才能實現。這就嚇跑了很多想學Windows編程的人。實際上,在Windows下顯示「Helloworld」,最簡單的方法只要5行就夠了:
#include「windows.h」
voidWinMain()
{
MessageBox(NULL,」HelloWorld!」,」MyFirstWindowsApplication」,MB_OK);
}
當然這個程序只建立了一個最簡單的對話框,但這已經夠了。
如果你沒有SDK編程的經驗,學VC就是要利用MFC繞過Windows編程的許多細節。有好的工具為什麼不用呢?現在你在VC寫一個」HelloWorld」,只要寫一行代碼就可以了。
voidCYourView::OnDraw(CDC*pDC)
{
//…….其他的代碼
pDC->TextOut(100,100,」HelloWorld!」);
}
但MFC不是萬能的,WinAPI和VC中有很多功能在MFC中並不能反映出來。在入門後,要想發揮VC的完全能力,WindowsAPI還是非常重要的。而且,這些API在其他Windows語言中也用得到。
學語言,與練武道理也差不多。VC、VB、Dlphi、VFP,以及其他的Windows編程語言,都屬於同一個門派:Windows門,雖然招式不同,但內功都是一樣的,這就是WindowsAPI(應用編程介面),大概是兩千個函數。任何武功,招式即使再復雜,通常也能在很短時間內記下來;但內功就不是一朝一夕的事。而且,各門派的內功不同,Unix、Linux門有Uinx的內功,Apple(蘋果)門有Mac的內功,Java更是自成一派。我們這里說的學VC,只是學招式,學招式一個月差不多就夠了,聰明的兩個星期就可以掌握。光學招式,嚇唬人是夠了,但和高手一過招,非出醜不可。要想精通VC,必須熟悉WindowsAPI。
D.高級語言與自然語言
一門高級語言與一門自然語言是類似的。關鍵要素有三:
語法:了解C和C++基本語法,這是比較容易的。
修辭:編程的藝術和風格。通常,這是與軟體工程聯系起來的。演算法上的小伎倆並非是關鍵的。嚴謹,嚴格按照規范去做,同時又能發揮出極大的創造性,才是語言學家的本色。
詞彙:如何利用別人的工作?如何利用自己以前的工作?這是一個軟體工程師成功的關鍵。如果詞彙量不豐富,就寫不出好文章,就會有想法表達不出。一個人的語法在上小學之前就基本上學成了,修辭水平也在年輕時就確定了,惟有詞彙量需要根據需要不斷學習、不斷擴充。VC編程中,擁有大的詞彙量就意味著要掌握較多的類、函數和其他編程組件。如:WindowsSDK,MFC,以及你所專攻的領域的現成的SDK,比如3D編程中的OpenGL,多媒體編程中的DirectX,圖像處理中的Victor庫。另外,ActiveX控制項的掌握往往也是成敗的關鍵。我們這幾年的工作也總結成了一個類庫,叫IPX(圖像處理框架),大大簡化了圖像處理的工作;不過現在還有很多細節問題要解決,如果有同學感興趣可以參與這方面的工作。
學習VC,千萬不要用我們在學校里學英語的方法,而要用小孩學說話的方法。所謂學英語的方法,就是我們在本科時學C語言的那種模式:詳細搞懂每一個細節,背大量的規則,很少上機實踐,沒有實際問題供解決,最後由考試來斷定學習成果。這種模式的後果大家都清楚:我們學了十幾年英語,可有不少人還只會四五千個單詞,寫百把字的文章,不會說,不能聽;尤其要命的是,看不懂VC的幫助文檔。我們要象嬰兒一樣,在使用中學會語法、修辭和詞彙;一開始肯定只能編出最糟糕的,就好象小孩開始只會說:「爸爸坐車車」;但「爸爸」「車車」這些詞對小孩是最需要的,學習的效率反而最高。學VC的時候,應從我的需要出發,先做一個最簡單的東西,然後一點一點復雜起來,象滾雪球一樣。
學習VC尤其要和別人交流,你苦苦思考不明白的,也許別人早就解決了。一定要善於學習:從書店找出有用的書;向身邊的高手學習;尋找可以利用的源代碼、類庫、組件、控制項、庫;如果能上互連網,那就更加能解決問題了。
『捌』 VC++好學嗎
根據你的基礎而定 若沒有什麼基礎,建議先看孫鑫的視頻教程,再去啃那些經典的C++書籍
如C++Primer 、「深入淺出MFC」、Windows核心編程
『玖』 VC++入門要多少時間
呵,有書有視頻,堅持到底,有些與C重疊的就跳過,我看用一星期就基本上手了,接著就可以學API和MFC了(C++中,兩種使可視化變得簡單的庫,可視化是指在系統下可以看到的東東,如軟體,窗口,圖形等等。),呵,入門很簡單,不過學到後邊就有點難了,要查很多相關的東西,布局函數很多。都要去記,
就說這么多了,希望對你有幫助,還有不懂就網路Hi我。
回答補充:看了樓下的回答,有點錯解了,基礎我覺得,認真點,不是很笨的人,一般一星期就可以OK的,加上他還有C的一些基礎,還有一點,看清楚樓主,他是要入門而已,當然一星期是很足夠的。入深一點,做點小軟體的話,我上邊都有說到了。請明白這一點
『拾』 菜鳥入門c++需要什麼書
給你推薦一本書 C程序設計 譚浩強著 清華大學出版社出版的
那本書不錯的 通俗易懂 很適合初學的