注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術(shù)計算機/網(wǎng)絡軟件與程序設計C/C++及其相關(guān)C++游戲編程入門教程

C++游戲編程入門教程

C++游戲編程入門教程

定 價:¥39.00

作 者: (美)(Dawson, M.)著
出版社: 人民郵電出版社
叢編項:
標 簽: C++

ISBN: 9787115137319 出版時間: 2006-01-01 包裝: 平裝
開本: 16開 頁數(shù): 296 字數(shù):  

內(nèi)容簡介

本書從C++語言和游戲編程最基礎的內(nèi)容開始,講述如何用C++語言進行游戲編程。全書分為10章,內(nèi)容由淺入深,全面覆蓋了C++語言的重要概念和編程技術(shù)。本書結(jié)構(gòu)嚴謹,注重培養(yǎng)讀者的實際動手能力。書中有關(guān)概念和知識的講解均配有與游戲有關(guān)的小程序,每章的最后結(jié)合該章所學內(nèi)容,給出一個獨立的游戲。本書的最后以一個較龐大的多人游戲項目結(jié)束,該游戲應用了全書介紹的所有主要概念。此外,書中的每章均配有大量習題,可幫助讀者評估對該章知識內(nèi)容的掌握程度。.本書適合大中專院校游戲開發(fā)或相關(guān)專業(yè)用作C++編程語言的基礎教材。本書不要求讀者具有C++編程或游戲開發(fā)方面的任何經(jīng)驗,通過學習本書,讀者將具備用C++語言進行游戲編程的能力。..交互性是游戲區(qū)別于其他娛樂形式的最大特性,而使得游戲具有交互性的正是幕后的編程工作。如果您準備游歷游戲編程世界,那么本書將帶領您開始這次旅行。在讀者學習每一個編程概念的同時,都將能在本書的引導下編制一些小游戲來驗證自己學到的新技能。在本書的最后,將帶領讀者結(jié)合書中所有主要概念,創(chuàng)建一個龐大的多玩家游戲。通過學習本書,讀者能夠充分掌握使用C++進行游戲編程的基礎知識!...

作者簡介

  MichaelDawson是一位程序員、計算機游戲設計人員及制作人。除了實際的游戲業(yè)經(jīng)驗之外,Mike在南加州大學獲得了計算機科學學士學位。Mike目前通過UCLAExtension課程和專門課程向各年齡段的學生教授游戲編程和設計知識。請有興趣的讀者訪問他的網(wǎng)站http://www.programgames.com,以便了解他的更多資料或者獲得有關(guān)他所編著的書籍的支持。

圖書目錄

第l章 類型、變量和標準I/O:LostFortune
1.1 C++簡介
1.1.1 將C++用于游戲
1.1.2 創(chuàng)建可執(zhí)行文件
1.1.3 處理錯誤
1.1.4 了解ISO標準
1.2 編寫第一個C++程序
1.2.1 GameOver程序簡介
1.2.2 為代碼添加注釋
1.2.3 使用空白
1.2.4 包括其他文件
1.2.5 定義main()函數(shù)
1.2.6 通過標準輸出顯示文本
1.2.7 結(jié)束語句
1.2.8 從main()返回一個值
1.3 使用std名稱空間
1.3.1 GameOver2.0程序簡介
1.3.2 使用using指令
1.3.3 GameOver3.0程序簡介
1.3.4 使用using聲明
1.3.5 何時使用using..
1.4 使用算術(shù)操作符
1.4.1 ExpensiveCalculator程序簡介
1.4.2 加法、減法和乘法
1.4.3 整數(shù)除法和浮點數(shù)除法
1.4.4 使用模操作符
1.4.5 操作的順序
1.5 聲明和初始化變量
1.5.1 GameStats程序簡介
1.5.2 基本類型
1.5.3 類型修飾符
1.5.4 聲明變量
1.5.5 命名變量
1.5.6 向變量賦值
1.5.7 初始化變量
1.5.8 顯示變量值
1.5.9 獲得用戶輸入
1.5.10 為類型定義新名稱
1.5.11 使用哪一種類型
1.6 使用變量執(zhí)行算術(shù)運算
1.6.1 GameStats2.0程序簡介
1.6.2 改變變量的值
1.6.3 使用組合賦值操作符
1.6.4 使用加In.減1操作符
1.6.5 處理整型數(shù)環(huán)繞
1.7 使用常量
1.7.1 GameStats3.0程序簡介
1.7.2 使用常量
1.7.3 使用枚舉
1.8 LostFortune簡介
1.8.1準備程序
1.8.2從玩家那里獲取信息
1.8.3講故事
1.9小結(jié)
1.10 問題與答案
1.11 討論題
1.12 練習題
第2章 事實、分支和游戲循環(huán):GuessMyNumbe
2.1 理解事實
2.2 使用if語句
2.2.1 ScoreRater程序簡介
2.2.2 測試true和false
2.2.3 將值解釋為true或false
2.2.4 使用關(guān)系操作符
2.2.5 嵌套if語句
2.3 使用else子句
2.3.1 ScoreRater2.0程序簡介
2.3.2 創(chuàng)建兩個分支路徑
2.3.3 使else子句與正確的if語句配對
2.4 使用switch語句
2.4.1 MenuChooser程序簡介
2.4.2 創(chuàng)建多個分支路徑
2.5 使用while循環(huán)
2.5.1 PlayAgain程序簡介
2.5.2 使用while循環(huán)實現(xiàn)循環(huán)
2.6 使用do循環(huán)
2.6.1 PlayAgain2.0程序簡介
2.6.2 使用do循環(huán)實現(xiàn)循環(huán)
2.7 使用break和continue語句
2.7.1 FinickyCounter程序簡介
2.7.2 創(chuàng)建while(true)循環(huán)
2.7.3 使用break語句退出循環(huán)
2.7.4 使用continue語句跳回循環(huán)頂部
2.7.5 何時使用break和continue
2.8 使用邏輯操作符
2.8.1 DesignersNetwork程序簡介
2.8.2  使用邏輯與操作符
2.8.3 使用邏輯或操作符
2.8.4 使用邏輯非操作符
2.8.5 操作符的順序
2.9 生成隨機數(shù)
2.9.1 DieRoller程序簡介
2.9.2 調(diào)用rand()函數(shù)
2.9.3 生成隨機數(shù)生成器種子
2.9.4 計算某個范圍內(nèi)的數(shù)字
2.10 游戲循環(huán)
2.11 GuessMyNumber簡介
2.11.1 應用游戲循環(huán)
2.11.2 開始游戲
2.11.3 創(chuàng)建猜測循環(huán)
2.11.4 結(jié)束游戲
2.12 小結(jié)
2.13 問題與答案
2.14 討論題
2.15 練習題
第3章 for循環(huán)、字符串和數(shù)組:WordJumble
3.1 使用for循環(huán)
3.1.1 Counter程序簡介
3.1.2 使用for循環(huán)計數(shù)
3.1.3 在for循環(huán)中使用空語句
3.1.4 嵌套for循環(huán)
3.2 對象
3.3 使用string對象
3.3.1 StringTester程序簡介
3.3.2 創(chuàng)建string對象
3.3.3 串聯(lián)string對象
3.3.4 使用size()成員函數(shù)
3.3.5 索弓Istring對象
3.3.6 遍歷string對象
3.3.7 使用find()成員函數(shù)
3.3.8 使用erase()成員函數(shù)
3.3.9 使用empty()成員函數(shù)
3.4 使用數(shù)組
3.4.1 Hero'sInventory程序簡介
3.4.2 創(chuàng)建數(shù)組
3.4.3 索引數(shù)組
3.4.4 訪問數(shù)組元素的成員函數(shù)
3.4.5 注意數(shù)組邊界
3.5 C風格的字符串
3.6 使用多維數(shù)組
3.6.1Tic-Tac-ToeBoard程序簡介
3.6.2創(chuàng)建多維數(shù)組
3.6.3索引多維數(shù)組
3.7 WordJumble簡介
3.7.1開始程序
3.7.2挑選要打亂的單詞
3.7.3打亂單詞
3.7.4歡迎玩家
3.7.5進入游戲循環(huán)
3.7.6說再見
3.8 小結(jié)
3.9 問題與答案
3.10 討論題
3.11 練習題
第4章 標準模板庫:Hangman
4.1 標準模板庫簡介
4.2 使用矢量
4.2.1 Hero'sInventory2.0程序簡介
4.2.2 準備使用矢量
4.2.3 聲明矢量
4.2.4 使用pushback()成員函數(shù)
4.2.5 使用size()成員函數(shù)
4.2.6 索引矢量
4.2.7 調(diào)用元素的成員函數(shù)
4.2.8 使用pop_back()成員函數(shù)
4.2.9 使用clear(、)成員函數(shù)
4.2.10 使用empty()成員函數(shù)
4.3 使用迭代器
4.3.1 Hero'sInventory3.0程序簡介
4.3.2 聲明迭代器
4.3.3 遍歷矢量
4.3.5 訪問矢量元素的成員函數(shù)
4.3.6 使用insert()矢量成員函數(shù)
4.3.7 使用erase()矢量成員函數(shù)
4.4 使用算法
4.4.1 HighScores程序簡介
4.4,2 準備使用算法
4.4.3 使用randomshuffle()算法
4.4.4 使用sort()算法
4.4.5 使用merge()算法
4.5 了解矢量性能
4.5.1 了解矢量的擴大
4.5.2 了解元素插入和刪除
4.6 了解其他STL容器
4.7 規(guī)劃程序
4.7.1 使用偽代碼
4.7.2 使用逐步求精方法
4.8 Hangman簡介
4.8.1 設計游戲
4.8.2 開始程序
4.8.3 初始化變量和常量
4.8.4 進入主循環(huán)
4.8.5 獲得玩家的猜測
4.8,6 結(jié)束游戲
4.9 小結(jié)
4.10 問題與答案
4.11 討論題
4.12 練習題
第5章 函數(shù):MadLib
5.1 創(chuàng)建函數(shù)
5.1.1 Instructions程序簡介
5.1.2 聲明函數(shù)
5.1.3 定義函數(shù)
5.1.4 調(diào)用函數(shù)
5.1.5 抽象
5.2 使用參數(shù)和返回值
5.2.1 Yes or No程序簡介
5.2.2 返回一個值
5.2.3 使用參數(shù)接受值
5.2.4 封裝
5.3 軟件重用
5.4 了解范圍
5.4.1 Scoping程序簡介
5.4.2 處理獨立的范圍
5.4.3 使用嵌套的范圍
5.5 使用全局變量
5.5.1 GlobalReach程序簡介
5.5.2 聲明全局變量
5.5.3 訪問全局變量
5.5.4 隱藏全局變量
5.5.5 改變?nèi)肿兞?br />5.5.6 盡可能少使用全局變量
5.6 使用全局常量
5.7 使用默認參數(shù)
5.7.1 GiveMeaNumber程序簡介
5.7.2 指定默認參數(shù)
5.7.3 將默認參數(shù)賦給參數(shù)
5.7.4 覆蓋默認參數(shù)
5.8 重載函數(shù)
5.8.1 Triple程序簡介
5.8.2 創(chuàng)建重載的函數(shù)
5.8.3 調(diào)用重載的函數(shù)
5.9 內(nèi)聯(lián)函數(shù)
5.9.1 TakingDamage程序簡介
5.9.2 指定函數(shù)將要內(nèi)聯(lián)
5.9.3 調(diào)用內(nèi)聯(lián)的函數(shù)
5.10 MadLib游戲簡介
5.10.1 開始程序
5.10.2 main()函數(shù)
5.10.3 as kText()函數(shù)
5.10.4 askNumberfl函數(shù)
5.10.5 tellStoryf)函數(shù)
5.11 小結(jié)
5.12 問題與答案
5.13 討論題
5.14 練習題
第6章 引用:Tic-Tac-Toe
6.1 使用引用
6.1.1 Referencing程序簡介
6.1.2 創(chuàng)建引用
6.1.3 訪問弓f用的值
6.1.4 更改弓l用的值
6.2  傳遞引用以更改參數(shù)
6.2.1 Swap程序簡介
6.2.2 按值傳遞
6.2.3 按引用傳遞
6.3 傳遞引用以提高效率
6.3.1 InventoryDisplayer程序簡介
6.3.2 了解引用傳遞的缺點
6.3.3 將參數(shù)聲明為常量引用
6.3.4 傳遞常量弓1用
6.4 決定如何傳遞參數(shù)
6.5 返回引用
6.5.1 InventoryReference程序簡介
6.5.2 返回一個引用
6.5.3 顯示返回的弓『用的值
6.5.4 將返回的引用賦給另一個弓i用
6.5.5 將返回的引用賦給變量
6.5.6 通過返回的引用更改對象
6.6 Tic-Tac-Toe游戲簡介
6.6.1 規(guī)劃游戲
6.6.2 開始程序
6.6.3 main()函數(shù)
6.6.4 Instruction()函數(shù)
6.6.5 askYesNofl函數(shù)
6.6.6 askNumber(、1函數(shù)
6.6.7 humanPiece0函譽炙
6.6.8 opponent()函數(shù)
6.6.9 displayBoard()函數(shù)
6.6.10 winner(、)函數(shù)
6.6.1 isLegal(1函數(shù)
6.6.12 humanMove()函數(shù)
6.6.13 computerMove()函數(shù)
6.6.14 announceWinner()函數(shù)
6.7 小結(jié)
6.8 問題與答案
6.9 討論題
6.10 練習題
第7章 指針:Tic-Tac-Toe2.0
7.1 指針基礎知識
7.1.1 Pointing程序簡介
7.1.2 聲明指針
7.1.3 初始化指針
7.1.4 將地址賦給指針
7.1.5 解除指針的引用
7.1.6 重新為指針賦值
7.1.7 使用對象指針
7.2 指針和常量
7.2.1 使用常量指針
7.2.2 使用指向常量的指針
7.2.3 使用指向常量的常量指針
7.2.4 總結(jié)常量和指針
7.3 傳遞指針
7.3.1 SwapPointerVersion程序簡介
7.3.2 按值傳遞
7.3.3 傳遞常量指針
7.4 返回指針
7.4.1 InventoryPointer程序簡介
7.4.2 返回指針
7.4.3 使用返回的指針顯示值
7.4.4 將返回的指針賦給另一個指針
7.4.5 將返回的指針指向的值賦給變量
7.4.6通過返回的指針改變對象
7.5 理解指針與數(shù)組之間的關(guān)系
7.5.1 ArrayPasser程序簡介
7.5.2 使用數(shù)組名稱作為常量指針
7.5.3 傳遞和返回數(shù)組
7.6 Tic-Tac-Toe2.0游戲簡介
7.7 小結(jié)
7.8 問題與答案
7.9 討論題
7.10 練習題
第8章 類:CritterCaretaker
8.1 定義新類型
8.1.1 SimpleCritter程序簡介
8.1.2 定義類
8.1.3 定義成員函數(shù)
8.1.4 實例化對象
8.1.5 訪問數(shù)據(jù)成員
8.1.6 調(diào)用成員函數(shù)
8.2 使用構(gòu)造函數(shù)
8.2.1 ConstructorCritter程序簡介
8.2.2 聲明和定義構(gòu)造函數(shù)
8.2.3 自動調(diào)用構(gòu)造函數(shù)
8.3 設置成員訪問級別
8.3.1 PrivateCritter程序簡介
8.3.2 指定公共和私有訪問級別
8.3.3 定義訪問器成員函數(shù)
8.3.4 定義常量成員函數(shù)
8.4 使用靜態(tài)數(shù)據(jù)成員和成員函數(shù)
8.4.1 StaticCritter程序簡介
8.4.2 聲明和初始化靜態(tài)數(shù)據(jù)成員
8.4.3 訪問靜態(tài)數(shù)據(jù)成員
8.4.4 定義靜態(tài)成員函數(shù)
8.4.5 調(diào)用靜態(tài)成員函數(shù)
8.5 CritterCaretaker游戲簡介
8.5.1 設計游戲
8.5.2 設計偽代碼
8.5,3 Critter類
8.5.4 main()函數(shù)
8.6 小結(jié)
8.7 問題與答案
8.8 討論題
8.9 練習題
第9章 高級類和動態(tài)內(nèi)存:GameLobby
9.1 使用聚合
9.1.1 CritterFarm程序簡介
9.1.2 使用對象數(shù)據(jù)成員
9.1.3 使用容器數(shù)據(jù)成員
9.2 使用友元函數(shù)和操作符重載
9.2.1 FriendCritter程序簡介
9.2.2 創(chuàng)建友元函數(shù)
9.2.3 重載操作符
9.3 動態(tài)分配內(nèi)存
9.3.1 Heap程序簡介
9.3.2 使用new操作符
9.3.3 使用delete操作符
9.3.4 避免內(nèi)存泄漏
9.4 使用數(shù)據(jù)成員和堆
9.4.1 HeapDataMember程序簡介
9.4.2 聲明指向堆上的值的數(shù)據(jù)成員
9.4.3 定義析構(gòu)函數(shù)
9.4.4 定義復制構(gòu)造函數(shù)
9.4.5 重載賦值操作符
9.4.6 GameLobby程序簡介
9.4.7 Player類
9.4.8 Lobby類
9.4.9 Lobby::AddPlayer()成員函數(shù)
9.4,10 Lobby::RemovePlayerf)成員函數(shù)
9.4.11 Lobby::Clear()成員函數(shù)
9.4.12 operator<<()成員函數(shù)
9.4.13 main()函數(shù)
9.5 小結(jié)
9.6 問題與答案
9.7 討論題
9.8 練習題
第10章 繼承和多態(tài):Blackiack
lO.1 繼承簡介
10.1.1 SimpleBoss程序簡介
10.1.2 從基類派生
10.1.3 從派生類實例化對象
10.1.4 使用繼承的成員
10.2 控制繼承基礎上的訪問
10.2.1 SimpleBoss2.0程序簡介
10.2.2  對類成員使用訪問修飾符
10.2.3 在派生類時使用訪問修飾符
10.3 調(diào)用和覆蓋基類成員函數(shù)
10.3.1 OverridingBoss程序簡介
10.3.2 調(diào)用基類構(gòu)造函數(shù)
10.3.3 覆蓋基類成員函數(shù)
10.3.4 調(diào)用基類成員函數(shù)
10.4 在派生類中使用重載的賦值操作符和復制構(gòu)造函數(shù)
10.5 多態(tài)簡介
10.5.1 VirtualBoss程序簡介
10.5.2 定義虛擬成員函數(shù)
10.5.3 定義虛擬析構(gòu)函數(shù)
10.6 使用抽象類
10.6.1 AbstractCreature程序
10.6.2 聲明純虛擬函數(shù)
10.6.3 從抽象類派生一個類
10.7 管理代碼
10.7.1 Critter項目
10.7.2 使用一個文件
10.7.3 創(chuàng)建頭文件
10.7.4 創(chuàng)建實現(xiàn)文件
10.7.5 創(chuàng)建應用程序文件
10.8 Blackiack游戲簡介
10.8.1 設計類
10.8.2 設計游戲邏輯
10.8.3 Card類
10.8.4 Hand類
10.8.5 GenericPlayer類
10.8.6 Player類
10.8.7 House類
10.8.8 Deck類
10.8.9 Game類
10.8.10 main(0函數(shù)
10.8.11 重載operator<<函數(shù)
10.9  小結(jié)
10.10 問題與答案
10.11 討論題
10.12 練習題
附錄A創(chuàng)建第一個C++程序
附錄B操作符優(yōu)先級
附錄C關(guān)鍵字
附錄DASCII表
附錄E轉(zhuǎn)義序列

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號