- 最後登錄
- 2023-5-5
- 在線時間
- 35 小時
- 註冊時間
- 2008-12-21
- 閱讀權限
- 30
- 精華
- 0
- UID
- 5504068
- 帖子
- 815
- 積分
- 1008 點
- 潛水值
- 26028 米
| 發表於 2009-11-25 01:49 PM|顯示全部樓層 如果瀏覽伊莉時速度太慢或無法連接,可以使用其他分流瀏覽伊莉,www01.eyny.com(02,03)。 C跟C++分別是兩種程式語言,之所以常常寫在一起,是因為以C寫的程式用C++的編譯器(compiler)去編譯(compile)一樣行得通。
大致上來說,C++就是升級版的C,它跟C的最大不同,就在於它多了類別(class)這個東西,但實際上,類別跟C固有的結構(struct)也沒什麼差別,只差在其預設的存取模式不同(class是private而struct是public),主要是一種觀念上的差別,另外就是C++有多了一些C所沒有的函式。
所謂的編譯器(compiler),就是讓程式設計者把寫好的原始碼轉換成機械碼以製成執行檔的一種轉換程式,要寫C/C++程式,只要任一種文書編輯軟體都行,你也可以用微軟附的記事本來寫程式,寫出來的程式就叫做原始碼(source code),只要存成.cpp檔案就可以了。
之後你只要找到一種C++的compiler,就可以用它來把.cpp檔變成.exe執行檔,然後對著compile出來的執行檔點兩下滑鼠左鍵,它就會依照你在原始碼中所下的命令去執行它的任務。
至於類別跟結構,這個後面會說到,不用心急,只要知道C++中有這兩種資料型態就行了。
目前市面上所有在賣的大型單機或網路遊戲,絕大多數是用C++開發出來的,少部份是用VB.net、C#、Delphi、Java之類的開發,至於手機遊戲,很多是J2ME(Java的一個分支),好像也有一部份是C++,我不太清楚,至於小遊戲或網頁遊戲那就多了,Flash、Director、Virtools、PHP、ASP、Java、VB…一堆有的沒的語言跟工具。
總之,如果是想進遊戲公司寫單機或網路遊戲,學C++是不會有錯的。而之所以大型的遊戲都會用C++來寫的原因,是因為C++跟一般的高階語言比起來,更兼有了低階的特性。什麼是高階低階?越接近人類語言的,就被稱為越高階的語言,而越接近電腦的機械碼的,就被稱為越低階的語言,而上面說過的compiler,就是此兩種語言之間的翻譯軟體,經由它,讓我們可以用人類較容易看懂的C++程式碼來和電腦做溝通,指示電腦該做些什麼。
但是越高階的語言,對電腦來說越難看懂,即使經過compile之後,還是會有很多不理想的地方,所以在處理的效率上就會較差,對C++來說,因為它兼有低階的特性,所以自然處理的效率就會比較好一點,因此在大型的遊戲中才不得不使用C++來編程,要不然玩家玩起來就會lag到死,這就是目前市面上的遊戲普遍都是用C++編程的原因。
不過隨著硬體設備越來越高檔、越來越便宜,也隨著各種語言的歷代改進,現在有些語言也能讓電腦在處理大型遊戲時不至於過度緩慢,因此最近也有一些用VB.net或Java之類語言來編程的大型遊戲,只是不多罷了,畢竟很長一段時間內,大家都是用C/C++在寫遊戲,所以在這方面對遊戲的支援比較多,像DirectX、OpenGL之類的遊戲函式庫,就要以C++來編程會比較能夠發揮其效力。(VB.net雖然也能呼叫DirextX,不過功能上會有些限制在。)
除了語言上的差別外,實際上,compiler之間也有差別存在,同樣是C++語言,用A牌的compiler可以成功編譯,如果改用B牌的compiler可能就會出現一堆問題,剛說過,compiler就像翻譯軟體,你就想成明明都是英文,可是在A牌翻譯軟體可以找得到單字,或者可以翻成一篇看得懂的文章,但在B牌翻譯軟體就會變成查無此字,或者翻譯出來的文章跟本看不懂其意義,是一樣的道理。
雖然C++有所謂的標準C++,但是這個標準中,有些小地方的細節是允許compiler製造商自行設定的,而且每家製造商,都還會提供只有自己的compiler才有的功能,藉此吸引顧客,因此雖然同樣是C++的規則,但不同的compiler會提供不同的函式庫讓我們呼叫,所以在實際編程上,是有很大的差異的。
目前拿來做遊戲最常用的compiler自然是微軟提供的Visual C++(簡稱VC++),再來是Borland提供的Borland C++ Builder(簡稱BCB),這兩款IDE(整合開發環境)都是需要花錢買的,而免費的compiler中比較有名的,大概是Dev C++。
上面又有個新名詞,IDE,Integrated Development Evironment,也就是整合開發環境,其中包括文書處理環境、專案組態設定以及一堆有的沒的工具,還有最重要的,compiler,總之,就是一個專門讓你寫程式的軟體,一般來說,在Windows的環境下,很少看到單獨存在的compiler,多半都是包含compiler的IDE,要到了Linux或Unix的環境下才會看到像gcc這樣的compiler,但這已是題外話了,我們的重點是放在Windows遊戲設計。
當然如果有人對Linux遊戲開發有研究的,也歡迎您貢獻一些教學的文章與我們分享,我個人對這方面沒有研究,所以就不再多提了,免得誤人子弟。
經過以上的解說,初入門者應該能夠對寫遊戲要學什麼語言有個初步的概念吧?想進遊戲界的話,學C++就沒錯啦!
... |
|