《VisualC++編程之道》是2011年人民郵電出版社出版的圖書,作者是明日科技、劉銳寧、梁水、李偉明。
基本介紹
- 書名:Visual C++編程之道
- 作者:明日科技 劉銳寧 梁水 李偉明
- ISBN:978-7-115-24640-0
- 頁數:432
- 定價:59元人民幣
- 出版社:人民郵電出版社
- 出版時間:2011-03-01
內容簡介,圖書目錄,
內容簡介
本書是一本幫助程式設計師提高編程素養的圖書,書中結合開發人員多年的編程經驗和感悟,介紹了程式開發中必知必會的關鍵細節、不可忽略的技術陷阱、常見的謬誤以及經典的套用實例。全書分為6篇,共17章,全面介紹了學習和套用Visual C++進行程式開發的各種知識,主要包括Visual C++語言關鍵技術、檔案、網路、執行緒、圖形圖像、算法、方案和資料庫套用等相關技術細節、技巧以及實施方案。
本書附有配套DVD光碟,光碟中提供了書中全部實例和項目的原始碼,這些原始碼都是經過作者精心調試通過的,保證能夠在Windows XP、Windows Server 2003及Windows 7作業系統下編譯和運行。
本書非常適合大中專院校在校生、畢業生、求職者、編程愛好者學習,同時也可以作為想要學習編程的初學者的指導用書。
圖書目錄
第1篇 編程經驗與感悟
第1章 細節完美——編程者的良好習慣 2
細節01 培養編程興趣 2
細節02 要重視實踐練習 3
細節03 學習編程要打好基本功 4
細節04 善於總結編程經驗 5
細節05 多向他人學習 5
細節06 學會獨立思考和解決問題 6
第2章 編程感悟——逐步提高編程能力 7
感悟01 編寫程式前首先進行需求分析 7
感悟02 軟體需求規格說明書 9
感悟03 程式書寫要規範化 9
感悟04 將項目模組化 12
感悟05 資料庫設計經驗談 13
感悟06 調試的重要意義 15
第3章 展望未來——程式人生的規劃 17
感悟01 計算機的套用領域 17
感悟02 如何選擇程式語言 18
感悟03 程式設計師的必備技能 19
感悟04 要有學好編程的堅定信心 20
感悟05 程式設計師的生涯規劃 21
第2篇 陷阱與謬誤
第4章 細說開發人員不可忽略的21個技術陷阱 24
陷阱01 while(condition);以分號結尾 24
陷阱02 初始化靜態成員的陷阱 25
陷阱03 複合賦值造成的經濟損失 27
陷阱04 增量、減量運算符在前在後 28
陷阱05 if語句沒加大括弧“{”和“}” 29
陷阱06 缺少break的switch語句 31
陷阱07 同名形參變數為成員變數賦值 33
陷阱08 使用循環語句不慎產生死循環 36
陷阱09 相等運算符重載造成的陷阱 38
陷阱10 強制轉換的負面影響 40
陷阱11 被覆蓋的父類變數 41
陷阱12 溢出錯誤 44
陷阱13 無法執行循環體內部的語句塊 45
陷阱14 死循環 46
陷阱15 數組下標越界 47
陷阱16 數組維數錯誤 47
陷阱17 局部變數與全局變數同名 48
陷阱18 向流中讀寫結構 49
陷阱19 自定義string類型導致函式無效 51
陷阱20 數組的定義與初始化 52
陷阱21 傳遞類數組 53
第5章 細說開發人員意識中的21個常見謬誤 54
謬誤01 使用&&、||和&、|作用於布爾型值效率相同 54
謬誤02 類中不能創建私有構造方法 55
謬誤03 為了提高編程效率而不必關心代碼的書寫風格 56
謬誤04 設計資料庫表時不必定義索引 57
謬誤05 重載就是重寫 57
謬誤06 執行緒就是進程 59
謬誤07 對象間賦值只能重載等號運算符 60
謬誤08 類對象可在離開作用範圍後自動釋放 61
謬誤09 delete與delete[]相同 62
謬誤10 結構大小等於各數據類型之和 62
謬誤11 函式只能返回一個值 63
謬誤12 兩個類可以互為成員變數 64
謬誤13 無法在指定的記憶體位置創建對象 65
謬誤14 類方法不能作為執行緒函式 66
謬誤15 常量方法不能修改類成員 67
謬誤16 在構造函式中初始化靜態成員 67
謬誤17 free和delete釋放指針後指針置空 68
謬誤18 使用delete可以釋放堆中分配的數組 68
謬誤19 使用auto_ptr就不必擔心記憶體泄露 69
謬誤20 使用非零對數組整體賦值 70
謬誤21 點陣圖數據是按照紅綠藍順序存儲的 70
第3篇 技術細節
第6章 細說Visual C++語言基礎細節43例 72
細節01 合理使用注釋 72
細節02 數值類型轉換 74
細節03 靜態轉換 75
細節04 sizeof運算符的使用 76
細節05 逗號表達式 78
細節06 條件表達式 78
細節07 枚舉類型 79
細節08 共用體類型 80
細節09 goto語句 81
細節10 return語句 82
細節11 位運算符 83
細節12 記憶體中的數組 85
細節13 死循環 86
細節14 定義和調用函式 87
細節15 設定默認值參數 88
細節16 數組作為函式的參數 89
細節17 指針或引用作為函式的參數 91
細節18 使用省略號作為函式的參數 92
細節19 函式的重載 93
細節20 函式指針 95
細節21 類的定義 96
細節22 類成員的訪問許可權 97
細節23 為什麼使用默認構造函式 99
細節24 重載構造函式 101
細節25 析構函式也很有用 102
細節26 單一繼承 103
細節27 多重繼承 105
細節28 隱藏的this指針 106
細節29 虛函式的使用 107
細節30 純虛函式的使用 111
細節31 內聯方法的使用 112
細節32 嵌套類的使用 113
細節33 局部類的使用 114
細節34 類的靜態數據成員 115
細節35 友員類的使用 116
細節36 友員方法的使用 117
細節37 無法修改數據成員的方法 118
細節38 類模板的使用 119
細節39 如何捕捉程式中的錯誤 121
細節40 如何在發生邏輯錯誤時拋出異常 122
細節41 可選的C++關鍵字 124
細節42 指針引用作為函式參數 125
細節43 構造函式的隱式類型轉換 126
第7章 細說開發人員必知必會的39個開發細節 128
細節01 訪問帶密碼的Access資料庫 128
細節02 事物在多表操作中的重要性 129
細節03 利用存儲過程生成唯一ID 130
細節04 將圖片數據存儲到資料庫 131
細節05 將資料庫中的圖片數據還原為圖片 132
細節06 各種資料庫合併列值的方法 134
細節07 將數據表中指定條件的記錄優先顯示 134
細節08 阻止用戶長時間對數據的鎖定 134
細節09 除去違反數據完整性約束的記錄 135
細節10 級聯更新的意義 135
細節11 通過視圖簡化複雜查詢 136
細節12 空值NULL與空字元串區別 137
細節13 將數據表中的空值轉換為有意義的數據 137
細節14 按照身份證中的年月日進行排序 138
細節15 使用執行緒同時進行多項操作 138
細節16 暫停、恢復和終止執行緒 142
細節17 執行緒終止隱藏的危機 144
細節18 多執行緒的安全退出 145
細節19 多執行緒資源訪問衝突 146
細節20 讓成員函式作為執行緒啟動函式 150
細節21 合理規劃——執行緒的優先權 150
細節22 執行緒池的套用 152
細節23 辨別核心對象與GUI對象 154
細節24 CreateProcess函式參數詳解 155
細節25 選擇TCP還是UDP 156
細節26 TCP粘包的煩惱 156
細節27 UDP丟包的煩惱 157
細節28 允許上萬人同時訪問伺服器的完成連線埠模型 157
細節29 套接字的阻塞模式 160
細節30 定義用戶通信協定 160
細節31 抓取網路數據包 161
細節32 利用UDP協定實現廣播通信 164
細節33 套接字的斷開重連 165
細節34 套接字中設定逾時連線 167
細節35 在套接字關閉時釋放套接字資源 168
細節36 單例模式的套用 168
細節37 策略模式的簡單套用 169
細節38 適配器模式的使用 170
細節39 系統列托盤選單 172
第4篇 編程技巧
第8章 開發技巧之——基礎開發技巧 176
技巧01 巧用異或運算符實現加密功能 176
技巧02 delete與delete []的差別 177
技巧03 生成隨機數 178
技巧04 COLORREF類型轉換RGB分量 179
技巧05 獲取字元串中的中文 179
技巧06 英文字元串首字母大寫 179
技巧07 指定符號分割字元串 180
技巧08 如何在字元串中使用雙引號 181
技巧09 去除字元串中所有的空格 181
技巧10 金額大小寫的轉換 182
技巧11 漢字轉換為區位碼 186
技巧12 區位碼轉換為漢字 186
技巧13 身份證升位計算技巧 187
技巧14 驗證18位身份證格式 188
技巧15 自動生成編號 190
技巧16 計算個人所得稅 191
技巧17 獲取漢字拼音簡碼 193
技巧18 進制轉換 194
第9章 開發技巧之——窗體與界面設計技巧 198
技巧01 向系統選單中插入自定義選單項 198
技巧02 創建級聯選單 199
技巧03 創建右鍵彈出選單 199
技巧04 在窗體上單擊滑鼠右鍵調用系統選單 200
技巧05 帶歷史信息的選單 201
技巧06 默認隱藏的選單 202
技巧07 工具列下拉選單 203
技巧08 滾動的窗體標題欄 206
技巧09 顯示和隱藏標題欄 207
技巧10 使狀態欄隨對話框的改變而改變 209
技巧11 使某個窗體總顯示在最前面 211
技巧12 限制窗體的大小 212
技巧13 視窗跟隨 214
技巧14 移動無標題欄窗體 215
技巧15 淡入淡出的窗體 215
技巧16 如QQ般隱藏的窗體 217
技巧17 不使用Esc鍵關閉窗體 218
技巧18 對話框伸縮 218
技巧19 使對話框的關閉按鈕變灰 219
技巧20 如何為對話框中的控制項設定提示信息 220
技巧21 自定義雲型窗體 220
技巧22 閃爍的彩虹文字 223
技巧23 在窗體關閉前顯示對話框 224
技巧24 系統列托盤選單 225
技巧25 帶點陣圖預覽的打開對話框 227
技巧26 Windows新型打開對話框 229
技巧27 同時選擇多個檔案 230
技巧28 使用回車鍵移動控制項焦點 232
技巧29 設定控制項的Tab順序 232
技巧30 如何隱藏控制項 232
第10章 開發技巧之——Windows開發技巧 233
技巧01 判斷是否插入存儲器 233
技巧02 判斷光碟機是否有光碟 233
技巧03 獲取磁碟空間信息 234
技巧04 關閉磁碟共享 236
技巧05 格式化磁碟 237
技巧06 整理磁碟碎片 238
技巧07 控制光碟機的彈開與關閉 239
技巧08 關閉、重啟和註銷計算機 240
技巧09 設計具有外掛程式功能的應用程式 242
技巧10 註冊和卸載ocx控制項 246
技巧11 清空資源回收筒 248
技巧12 隱藏和顯示桌面檔案 248
技巧13 隱藏和顯示Windows系統列 250
技巧14 隱藏系統列時鐘 251
技巧15 通過記憶體映射實現傳送數據 252
技巧16 獲得當前螢幕的解析度 253
技巧17 使進程處於睡眠狀態 253
技巧18 註冊訊息 254
技巧19 獲取鍵盤按鍵 254
技巧20 禁止鍵盤POWER鍵 255
技巧21 可導出的動態程式庫函式 255
技巧22 利用鉤子技術實現鍵盤監控 256
技巧23 顯示系統正在運行的程式 258
第11章 開發技巧之——網路開發技巧 260
技巧01 獲取區域網路中計算機名稱 260
技巧02 通過計算機名稱獲取IP位址 262
技巧03 獲取網卡地址 263
技巧04 獲取當前打開的連線埠 264
技巧05 獲取區域網路共享資源 265
技巧06 映射網路驅動器 268
技巧07 區域網路資料夾的共享 269
技巧08 在區域網路中傳送短訊息 270
技巧09 如何清空IE的歷史記錄 271
技巧10 如何刪除Internet臨時檔案 271
技巧11 設定IE的默認主頁 272
技巧12 清空上網歷史記錄 272
技巧13 套接字的斷開重連 272
技巧14 在套接字中如何設定逾時連線 274
技巧15 利用UDP實現廣播通信 275
技巧16 IP連線埠掃描 276
第5篇 算法和效率
第12章 算法與執行效率 279
算法01 順序查找 279
算法02 二分查找 280
算法03 分塊查找 283
算法04 哈希查找 285
算法05 直接插入排序 288
算法06 希爾排序 290
算法07 起泡排序 292
算法08 快速排序 294
算法09 選擇排序 298
算法10 歸併排序 299
第13章 程式設計師必會的算法 302
算法01 斐波那契數列 302
算法02 角谷猜想 303
算法03 歌德巴赫猜想 304
算法04 四方定理 305
算法05 尼科徹斯定理 306
算法06 水仙花數 307
算法07 百錢百雞 308
算法08 韓信點兵 309
算法09 魔術師的秘密 310
算法10 巧分蘋果 311
算法11 分魚問題 313
第6篇 解決方案
第14章 登錄和主界面顯示實施方案 315
方案01 主界面設計方案 315
方案02 實現系統登錄 329
方案03 閃屏界面顯示 334
第15章 資料庫、軟體註冊及檔案加密解決方案 339
方案01 套用存儲過程處理數據 339
方案02 利用視圖進行查詢 343
方案03 初始化、備份和還原資料庫 349
方案04 軟體註冊解決方案 357
方案05 檔案加密與解密方案 360
第16章 檔案和網路處理開發方案 365
方案01 複製檔案方案 365
方案02 檔案的分割與合併 368
方案03 螢幕監控專家 371
方案04 聊天室 379
第17章 多媒體套用和遊戲解決方案 388
方案01 畫圖程式 388
方案02 照片版式處理 391
方案03 視頻捕捉 397
方案04 音頻錄製 400
方案05 AVI檔案合成分解 404
方案06 螢幕截圖方案 413
方案07 俄羅斯方塊 415
方案08 貪吃蛇 424