• 2

請教各位大大有關C++程式設計...

各位大大好,小弟想請教各位先進幾個菜鳥級的問題,
先來說說小弟目前的情況...

小弟目前是在職訓課程-遊戲軟體設計班上課,
目前是教到從visual c++正進入MFC中,
未來好像還要進入directX跟3d繪圖...

問題來了,聽說directx可以說是大型的類別庫,
MFC也是以類別為主,可是小弟目前在學習類別可以說是完全卡住了...
不管看多少次還是對於教科書的內容完全不瞭解,
尤其是虛擬、覆載、繼承、拷貝、抽象、衍生...
就更別提上課完全聽懂MFC了...

想請教有沒有什麼書籍或可參考的資料或網站、講義,
可以提供比較清楚的架構或解說可供小弟學習呢?
在此跟各位高手大大跪求了...

p.s:小弟目前教科書為Ivor Horton's寫的Visual c++ 6教學手冊
2008-05-12 21:17 發佈
文章關鍵字 大大 C++程式
侯老師的舊作 深入淺出 MFC 第二版可以參考(一共五個電子檔案),也有免費的電子書可以看。

http://jjhou.csdn.net/

// ThinkPad X61-CW9 作業中..
若你是對虛擬、覆載、繼承、拷貝、抽象、衍生都不是很清楚下,
那就不該直接學mfc,那會讓你很痛苦的.

虛擬、覆載、繼承、拷貝、抽象、衍生是c++的基礎,你可以看Thinking in C++(有聽過thking in java吧,同一個作者喔),內容深入淺出,也不會太厚,看完c++的基本功就有一定程度了.
再來可以看看effective C++, more effective C++,exceptional C++等等侯老大翻的經典書

至於c++之父的the c++ programing language.就要看你自己有沒有時間了.頗厚的一本書,
料很多,但也比較艱澀.尤其若你讀原文版的
DirectX 嘛,跟物件導向其實有點差距,其實單單 C 跟 DirectX 也可以寫的很好。

我是傾向把 DirectX 當動態元件庫,因為 DirectX 其實並不是很 OO 啦 XD 有些 FrameWork 用 OO 把 DirectX 越包越亂,反而麻煩.

OO 其實很自然,自然界分動植物、又分界門綱目科屬種,像人有種種膚色、性別,都是 OO ,不用看的太難,基本觀念通了比較重要。
推薦侯捷翻譯版本的c++ primer
雖然很大本
不過卻是很好的參考書

MFC對C++新手來說
實在是太深了點
建議還是先把C++基礎打好
物件導向的觀念建立後
看MFC就不會霧裡看花
如果對簡體中文不會抗拒或是看得懂
其實網路上也有很多中文資料
有空可以翻一翻
扣掉名詞的差異
其實很多書都寫得很淺顯
再推薦一本簡體書
"精通MFC程序設計"
姚領田編著
可以當作便宜的參考書
還有MFC聖經系列
在剛開始需要範例練習的時候
可以參考
"MFC_參考大全"
"MFC_範例寶典"
可以幫助你更深入了解各個控件的使用方法還有應用的思考
不知道樓主的 C++ 學到那裡. 從文中看, 似乎是在同一時間學 C++, Windows Programming, MFC, 三效合一, 消化不良是很正常的. 在 DirectX 之前, 還有 COM 呢.

你正在學的東西, 每一個都花時間, 所以要有耐心. 我的建議是先把一個學好再換一個:

從 C++ 開始, 先把 class, inheritence, dynamic binding, virtual table, interface, 乃至於 STL, smartpointers 等等的基本觀念融會貫通, 才有可能再往下一步前進.

C++ 上手之後, 先別看 MFC, 最好從基本的 Windows Programming 開始看起. Petzold 的 Programming Windows 大概看過一次, 可以給你基本的 Windows Programming 概念. 這一步, 似遠實近, 我覺得很必要.

等基本的 Windows Programming 概念都弄熟了, 再來摸 MFC, 才能有條理. 我其實不建議 MFC, framework 本身已經太複雜, 更糟的是, Wizard 把本質複雜的東西弄得看起來很簡單, 卻無法改變其複雜的本質, 反而把一些新手程式員帶到一個無法收拾的窘境. 到時候想改都來不及了
http://starterx.blogspot.com
我跟樓上那些大大見解不太一樣...
MFC跟C++是完全不一樣的的東西....
MFC是要懂windows的message流程, 跟c++完全沒關係....
建議您可以直接學MFC, 因為用MFC裡也可以用c++, c, 組語等東西(可查msdn邊學就可以了)....
我從java直接跳到MFC, 已寫四年了... 您參考看看....
有VC or MFC 的問題也可問我, 我這一堆資料, 電子書....=.=|||
我想是因為職訓就是要我們短時間內,
學到要可以進遊戲公司上班的程度,
想當然爾是一件不輕鬆的事情,
尤其是"短時間"這三個字...

小弟今天會去把各位大大推薦的書去翻一翻,
看看哪本是小弟看的懂的,
其實我也知道不要把這個想的太難,
只是心理上還是會有相當承重的壓力在,
真可說是"我拿青春賭明天"阿...

我們老師跟我們說因為我們的終極目標是做遊戲,
所以很多東西只要知道個大概就可以了,
因為"短時間"...所以上班後知道要怎麼"查"才是重點,
可是聽他這樣說心裡還是很不安,
會想"這樣真的可以嗎?",才想說要盡可能的去學習,
業界真的是這樣嗎?(還有老師說進去要再學引擎...)

今天回去會先去書店,
如果有問題就會再麻煩各位大大了...
如果要寫遊戲的話, MFC....講實話沒有學的必要....除非要維護別人的工具程式.
至少沒必要馬上學, 我不知道這課程的安排怎麼樣, 不過像什麼數位內容學院那種
遊戲程式班, 課程都蠻趕的. 自己回家一定要犠牲休閒時間再復習.

另外上面前輩講過了, 不要把C++跟MFC混在一起學, 絕對會死得很難看, 先把OO
跟C/C++學好再說. DirectX的話一定會講到COM, 但是完全不用鳥它, 大概知道
有COM這個東西就好了, 寫遊戲的時候會用的COM的地方的程式碼都是重覆利用的,
講實際一點就是copy/paste....裏面搞什麼根本不用去管它...
與失敗為伍者,天天靠盃都是別人的錯。 與成功為伍者,天天跟失敗切磋直到不再出錯。
呃!!我原來就是寫遊戲的.....XD

老實說,寫遊戲,連 C++ 都很少應用,因為效率問題,最常用的反而是 C 而不是 C++,不過現在也沒什麼限制啦,連 C# 都可以寫 DirectX 遊戲,所以程式語言現在只是一個橋樑。

DirectX 就是 COM,但是 COM 其實並不是示範 OO 的好範例就是了。目前業界的確常用很多繪圖、物理相關的 FrameWork,不少會包成靜態類別庫或動態類別庫,我是覺得基礎知識從懂得用開始,用多了,進一步再去摸索深一層的架構問題。

不要急,學資訊的人心理都很急,因為技術太多、進步太快,沒一兩年就會有新技術新東西要學,好像什麼都很重要,其實,萬變不離其宗,先把 Windows 本身架構跟 DirectX 的架構搞清楚,其他什麼新技術就很好上手了。
  • 2
內文搜尋
X
評分
評分
複製連結
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?