內容簡介
全書共四部分24章,結構清晰敘述清楚,分別介紹和討論了C++.NET基礎與Microsoft.NET編程婆盼盼敬基礎,闡述如何使用.NET Framework,解釋了非託管代碼,特性和反射,兼容COM等高級主題。
本書可幫助你提升專業技能,完全掌握Visual C++/CLI語言。特別適合有一定編程經驗但剛開始接觸Visual C++的讀者,可以高效指導讀者由淺入深,循序漸進地掌歸應罪祝握各種核心主題與技術。
Authorized translation from the English language edition, entitled MICROSOFT VISUAL C++/CLI STEP BY STEP,1st Edition, 9780735675179 by TEMPLEMAN,JULIAN,published by Pearson Education, Inc, publishing as Microsoft Press, Copyright © 2013 by Julian Templeman.
All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording or by any information storage retrieval system, without permission from Pearson Education, Inc. CHINESE SIMPLIFIED language edition published by TSINGHUA UNIVERSITY PRESS LIMITED Copyright © 2015.
圖書目錄
第I部分 C++ .NET基礎擊記才
第1章 Hello C++! 3
1.1 什麼是C++/CLI 3
1.2 第一個C++/CLI應用程式 3
1.2.1 main函式 4
1.2.2 C++關鍵字和標識符 4
1.3 創建可執行套用程騙只想序(理論) 5
1.3.1 編輯應用程式源檔案 5
1.3.2 編譯原始碼 5
1.3.3 運行並測試應用程式 6
1.4 創建可執行應用程式(實踐) 6
1.4.1 創建項目 6
1.4.2 編輯C++原始碼 7
1.4.3 生成執行檔 8
1.4.4 執行應用程式 9
小結 9
快速參考 9
第2章 面向對象編程基礎 10
2.1 什麼是面向對象編程 10
2.2 面向對象程式語言的特點 11
2.2.1 封裝 11
2.2.2 繼承 11
2.2.3 多態 12
2.3 類和對象 12
2.4 開發生命周期的好處 13
2.5 一個簡單的例子 13
快速參考 17
第3章 變數和操作符 18
3.1 什麼是變數 18
3.2 基本數據類型 18
3.3 變數聲明 19
變數命名 20
3.4 聲明多個變數 20
3.5 變數賦值 20
3.6 句柄和指針 21
3.7 數組 22
3.8 常量 22
3.9 typedef 23
3.10 .NET Framework的String類 23
3.11 操作符和表達式 24
3.11.1 賦值操作符 24
3.11.2 算術操作符 24
3.11.3 關係和邏輯操作符 25
3.11.4 按位操作符 25
3.11.5 三元操作符 26
3.11.6 強制類型轉換 26
3.11.7 操作符優先權和乎檔婚結合性 27
快速參考 28
第4章 使用函式 29
4.1 聲明函式原型 29
4.1.1 聲明簡單函式原型 29
4.1.2 在函式原型中聲明參數 30
4.1.3 在函式原型陵舉想中聲船茅明返回類型 31
4.1.4 聲明參數默認值 31
4.2 定義函式主體 32
4.2.1 定義簡單函式主體 32
4.2.2 定義使用參數的函式主體 33
4.2.3 定義返回值的函式主體 34
4.3 調用函式 35
4.4 使用調試器單步執行 37
4.5 理解局部和全局作用域 40
快速參考 42
第5章 判斷和循環語句 44
5.1 使用if語句進行判斷 44
5.1.1 執行單路測試 44
5.1.2 執行雙路測試 47
5.1.3 執行多路測試 48
5.1.4 執行嵌套測試 50
5.2 使用switch語句進行判斷 51
5.2.1 定義簡單switch語句 51
5.2.2 在switch語句中利用直通 53
5.3 執行循環 54
5.3.1 使用while循環 54
5.3.2 使用for循環 55
5.3.3 使用do-while循環 56
5.3.4 執行無條件跳轉 58
快速參考 59
第6章 類和對象進階 62
6.1 用頭檔案和源檔案組織類 62
6.1.1 在頭檔案中聲明類 64
6.1.2 在源檔案中實現類 64
6.2 創建對象 66
6.3 用構造器初始化對象 68
6.3.1 定義構造器 68
6.3.2 成員初始化列表 69
6.4 定義類範圍的成員 70
6.4.1 定義類級數據成員 71
6.4.2 定義類級成員函式 72
6.4.3 類構造器 74
6.5 在類中使用常量 75
6.5.1 使用類級常量 75
6.5.2 使用實例常量 76
6.6 定義對象關係 77
6.6.1 定義LoyaltyScheme類 77
6.6.2 實現LoyaltyScheme類 78
6.6.3 創建和使用LoyaltyScheme對象 79
6.6.4 測試應用程式 81
快速參考 82
第7章 控制對象生存期 85
7.1 .NET如何控制對象生存期 85
7.2 析構和終結 86
7.2.1 析構器 86
7.2.2 終結器 87
7.2.3 實現類的析構器和終結器 88
7.3 對象和棧的語義 91
7.3.1 傳統C++對象的創建和析構 91
7.3.2 創建具有棧語義的對象 92
7.4 拷貝構造器 93
7.5 將對象和棧的語義關聯 96
快速參考 99
第8章 繼承 101
8.1 什麼是繼承 101
8.1.1 關於繼承的術語 101
8.1.2 繼承和代碼重用 102
8.2 設計繼承層次結構 102
8.3 定義基類 103
8.4 定義派生類 105
8.5 創建派生類的對象 107
8.6 具體和抽象類 108
8.7 重寫成員函式 109
8.8 受保護的訪問 113
8.9 定義密封類 114
8.10 定義和使用接口 115
快速參考 116
第II部分 Microsoft .NET編程基礎
第9章 值類型 121
9.1 引用類型和值類型 121
9.1.1 對值類型的需求 121
9.1.2 值類型的特點 122
9.2 結構 123
9.2.1 創建和使用簡單結構 123
9.2.2 深入理解結構 124
9.2.3 結構和類的區別、 125
9.2.4 為結構實現構造器 125
9.2.5 嵌套結構 126
9.2.6 複製結構 128
9.3 枚舉 128
9.3.1 創建和使用枚舉 129
9.3.2 在應用程式中使用枚舉 131
9.3.3 高效使用記憶體 131
快速參考 132
第10章 操作符重載 133
10.1 什麼是操作符重載 133
10.1.1 哪些類型需要重載操作符 133
10.1.2 哪些能重載 134
10.1.3 重載規則 134
10.2 在託管類型中重載操作符 135
10.2.1 重載算術操作符 135
10.2.2 使用靜態操作符重載 136
10.2.3 可以重載哪些操作符 138
10.2.4 實現邏輯操作符 140
10.2.5 實現遞增和遞減 143
10.2.6 操作符和引用類型 144
10.2.7 操作符重載規範 145
快速參考 145
第11章 異常處理 146
11.1 什麼是異常 146
11.1.1 異常的工作原理 147
11.1.2 不同的異常類型 148
11.2 拋出異常 148
11.3 處理異常 150
11.3.1 使用try和catch構造 150
11.3.2 自定義異常處理 152
11.3.3 使用異常層次結構 153
11.3.4 異常和構造器一起使用 153
11.3.5 異常嵌套和重新拋出 155
11.3.6 finally塊 157
11.3.7 catch(...)塊 157
11.4 創建自己的異常類型 158
11.5 使用safe_cast進行動態類型轉換 160
11.6 跨語言使用異常 160
快速參考 163
第12章 數組和集合 165
12.1 原生C++數組 165
12.1.1 將數組傳給函式 167
12.1.2 數組初始化 169
12.1.3 多維數組 169
12.1.4 動態創建數組 170
12.2 泛型類型 171
12.3 託管數組 172
12.3.1 初始化 174
12.3.2 數組和引用類型 174
12.3.3 對數組使用for each循環 175
12.3.4 多維數組 176
12.4 .NET數組類 176
12.4.1 基本數組操作 178
12.4.2 更多高級數組操作 179
12.4.3 使用枚舉器 181
12.5 其他.NET集合類 182
12.5.1 List<T>類 183
12.5.2 SortedList<K,V>類 185
12.6 泛型和模板 186
12.6.1 STL/CLR庫 187
12.6.2 STL的三個概念 188
快速參考 189
第13章 屬性 190
13.1 什麼是屬性 190
13.2 實現標量屬性 191
13.2.1 屬性中的錯誤 193
13.2.2 自動實現的屬性 193
13.2.3 唯讀和只寫屬性 194
13.2.4 屬性、繼承和接口 195
13.3 實現索引屬性 196
13.3.1 Bank例子 196
13.3.2 創建Account類的屬性 198
13.4 向Bank類添加賬戶 199
13.4.1 實現Add和Remove方法 199
13.4.2 實現索引屬性來獲取賬戶 201
快速參考 203
第14章 委託和事件 204
14.1 什麼是委託 204
14.2 委託的作用 205
14.2.1 定義委託 205
14.2.2 使用委託 206
14.3 什麼是事件 210
14.3.1 實現事件源類 211
14.3.2 實現事件接收者 213
14.3.3 綜合運用 214
快速參考 218
第15章 .NET Framework類庫 219
15.1 什麼是.NET Framework 219
15.1.1 公共語言運行時 219
15.1.2 Microsoft中間語言 220
15.1.3 通用類型系統 220
15.1.4 公共語言規範 220
15.1.5 .NET Framework類庫 220
15.1.6 程式集 221
15.1.7 元數據 221
15.2 .NET Framework命名空間 223
15.2.1 在C++應用程式中使用命名空間 224
15.2.2 System命名空間 225
15.2.3 Collections命名空間 226
15.2.4 Collections接口 227
15.2.5 Diagnostics命名空間 227
15.2.6 IO命名空間 228
15.2.7 Windows命名空間 228
15.2.8 .Net命名空間 229
15.2.9 ServiceModel命名空間 229
15.2.10 Xml命名空間 229
15.2.11 Data命名空間 230
15.2.12 Web命名空間 230
快速參考 231
第III部分 使用.NET Framework
第16章 處理檔案 235
16.1 System::IO命名空間 235
16.2 使用reader和writer進行文本I/O 236
16.2.1 使用TextWriter 236
16.2.2 FileStream類 239
16.2.3 使用TextReader 240
16.3 處理檔案和 242
16.4 二進制I/O 249
16.4.1 BinaryWriter類 249
16.4.2 BinaryReader類 250
快速參考 254
第17章 讀寫XML 256
17.1 XML和.NET 256
17.1.1 .NET XML命名空間 256
17.1.2 XML處理類 257
17.2 用XmlReader解析XML 257
17.2.1 創建XmlReader 260
17.2.2 XmlReaderSettings類 260
17.2.3 驗證良構XML 264
17.2.4 處理特性 264
17.2.5 解析XML時進行驗證 265
17.3 用XmlTextWriter寫XML 267
17.4 使用XmlDocument 271
17.4.1 什麼是W3C DOM 272
17.4.2 XmlDocument類 272
17.4.3 XmlNode類 274
快速參考 280
第18章 使用ADO.NET 281
18.1 什麼是ADO.NET 281
18.1.1 ADO.NET數據提供程式 282
18.1.2 ADO.NET命名空間 282
18.1.3 ADO.NET程式集 283
18.2 創建連線式應用程式 283
18.2.1 連線資料庫 284
18.2.2 創建和執行命令 286
18.2.3 執行數據修改命令 287
18.2.4 執行查詢並解析結果 288
18.3 創建斷開式應用程式 289
18.4 使用DataSet執行斷開式操作 290
快速參考 295
第19章 用WCF編寫服務 297
19.1 什麼是Windows Communication Foundation 297
19.1.1 分散式系統 297
19.1.2 服務 298
19.1.3 連線性 298
19.2 WCF基礎 299
19.2.1 端點 299
19.2.2 地址 299
19.2.3 綁定 300
19.2.4 協定 301
19.2.5 訊息交換模式 302
19.2.6 行為 303
19.3 創建服務 303
19.3.1 編寫服務客戶端 305
19.3.2 向服務添加元數據 306
19.3.3 使用代理訪問服務 309
快速參考 311
第20章 Windows Store應用程式基礎 312
20.1 Windows UI應用程式簡史 312
20.1.1 Win32 API 312
20.1.2 MFC 313
20.1.3 Windows窗體 313
20.1.4 WPF 313
20.1.5 Windows 8和Windows Store 314
20.1.6 選擇哪個UI庫 314
20.2 Windows Store套用簡介 315
20.3 寫Windows Store套用 317
20.3.1 創建第一個Windows Store 套用 317
20.3.2 檢查項目 320
20.4 XAML簡介 321
20.4.1 什麼是XAML 321
20.4.2 XAML語法 322
20.4.3 XAML控制項 323
20.4.4 布局控制項 324
20.4.5 事件處理 328
20.5 C++/CX和Windows RT 329
20.5.1 Windows RT 329
20.5.2 元數據 330
20.5.3 C++/CX語法 330
20.5.4 常用命名空間 332
快速參考 334
第21章 Windows Store套用進階 335
21.1 開發簡單計算器 335
21.1.1 布局數字按鈕 335
21.1.2 處理數字輸入 338
21.1.3 添加數學運算 339
21.1.4 執行運算 342
21.1.5 測試計算器 345
21.1.6 改進圖形 347
21.1.7 處理不同進制 349
21.1.8 使用套用欄 358
21.1.9 添加共享 361
21.1.10 改進思路 365
快速參考 365
第IV部分 高 級 主 題
第22章 使用非託管代碼 369
22.1 託管和非託管代碼 369
22.1.1 混合類 369
22.1.2 GCHandle類型 370
22.2 固定和裝箱 372
22.2.1 內部指針 372
22.2.2 固定指針 372
22.2.3 裝箱和拆箱 373
22.2.4 裝箱 374
22.2.5 拆箱 374
22.3 使用P/Invoke調用Win32 API中的函式 375
22.3.1 DllImportAttribute類 378
22.3.2 傳遞結構 379
快速參考 382
第23章 特性和反射 383
23.1 元數據和特性 383
23.2 使用預定義特性 385
23.2.1 AssemblyInfo.cpp檔案 385
23.2.2 使用預定義特性類 386
23.3 定義自己的特性 389
23.3.1 特性類的屬性 390
23.3.2 特性類設計規範 390
23.3.3 創建自定義特性 391
23.4 利用反射獲取特性數據 394
23.4.1 Type類 394
23.4.2 訪問標準特性 395
23.4.3 訪問自定義特性數據 396
快速參考 398
第24章 兼容COM 400
24.1 COM組件和COM互操作 400
24.2 在.NET代碼中使用COM組件 400
24.2.1 RCW的工作原理 401
24.2.2 創建和使用RCW 402
24.2.3 處理COM錯誤 404
24.2.4 COM對象晚期綁定 405
24.3 .NET組件作為COM組件使用 406
快速參考 408
譯者後記 409
2.4 開發生命周期的好處 13
2.5 一個簡單的例子 13
快速參考 17
第3章 變數和操作符 18
3.1 什麼是變數 18
3.2 基本數據類型 18
3.3 變數聲明 19
變數命名 20
3.4 聲明多個變數 20
3.5 變數賦值 20
3.6 句柄和指針 21
3.7 數組 22
3.8 常量 22
3.9 typedef 23
3.10 .NET Framework的String類 23
3.11 操作符和表達式 24
3.11.1 賦值操作符 24
3.11.2 算術操作符 24
3.11.3 關係和邏輯操作符 25
3.11.4 按位操作符 25
3.11.5 三元操作符 26
3.11.6 強制類型轉換 26
3.11.7 操作符優先權和結合性 27
快速參考 28
第4章 使用函式 29
4.1 聲明函式原型 29
4.1.1 聲明簡單函式原型 29
4.1.2 在函式原型中聲明參數 30
4.1.3 在函式原型中聲明返回類型 31
4.1.4 聲明參數默認值 31
4.2 定義函式主體 32
4.2.1 定義簡單函式主體 32
4.2.2 定義使用參數的函式主體 33
4.2.3 定義返回值的函式主體 34
4.3 調用函式 35
4.4 使用調試器單步執行 37
4.5 理解局部和全局作用域 40
快速參考 42
第5章 判斷和循環語句 44
5.1 使用if語句進行判斷 44
5.1.1 執行單路測試 44
5.1.2 執行雙路測試 47
5.1.3 執行多路測試 48
5.1.4 執行嵌套測試 50
5.2 使用switch語句進行判斷 51
5.2.1 定義簡單switch語句 51
5.2.2 在switch語句中利用直通 53
5.3 執行循環 54
5.3.1 使用while循環 54
5.3.2 使用for循環 55
5.3.3 使用do-while循環 56
5.3.4 執行無條件跳轉 58
快速參考 59
第6章 類和對象進階 62
6.1 用頭檔案和源檔案組織類 62
6.1.1 在頭檔案中聲明類 64
6.1.2 在源檔案中實現類 64
6.2 創建對象 66
6.3 用構造器初始化對象 68
6.3.1 定義構造器 68
6.3.2 成員初始化列表 69
6.4 定義類範圍的成員 70
6.4.1 定義類級數據成員 71
6.4.2 定義類級成員函式 72
6.4.3 類構造器 74
6.5 在類中使用常量 75
6.5.1 使用類級常量 75
6.5.2 使用實例常量 76
6.6 定義對象關係 77
6.6.1 定義LoyaltyScheme類 77
6.6.2 實現LoyaltyScheme類 78
6.6.3 創建和使用LoyaltyScheme對象 79
6.6.4 測試應用程式 81
快速參考 82
第7章 控制對象生存期 85
7.1 .NET如何控制對象生存期 85
7.2 析構和終結 86
7.2.1 析構器 86
7.2.2 終結器 87
7.2.3 實現類的析構器和終結器 88
7.3 對象和棧的語義 91
7.3.1 傳統C++對象的創建和析構 91
7.3.2 創建具有棧語義的對象 92
7.4 拷貝構造器 93
7.5 將對象和棧的語義關聯 96
快速參考 99
第8章 繼承 101
8.1 什麼是繼承 101
8.1.1 關於繼承的術語 101
8.1.2 繼承和代碼重用 102
8.2 設計繼承層次結構 102
8.3 定義基類 103
8.4 定義派生類 105
8.5 創建派生類的對象 107
8.6 具體和抽象類 108
8.7 重寫成員函式 109
8.8 受保護的訪問 113
8.9 定義密封類 114
8.10 定義和使用接口 115
快速參考 116
第II部分 Microsoft .NET編程基礎
第9章 值類型 121
9.1 引用類型和值類型 121
9.1.1 對值類型的需求 121
9.1.2 值類型的特點 122
9.2 結構 123
9.2.1 創建和使用簡單結構 123
9.2.2 深入理解結構 124
9.2.3 結構和類的區別、 125
9.2.4 為結構實現構造器 125
9.2.5 嵌套結構 126
9.2.6 複製結構 128
9.3 枚舉 128
9.3.1 創建和使用枚舉 129
9.3.2 在應用程式中使用枚舉 131
9.3.3 高效使用記憶體 131
快速參考 132
第10章 操作符重載 133
10.1 什麼是操作符重載 133
10.1.1 哪些類型需要重載操作符 133
10.1.2 哪些能重載 134
10.1.3 重載規則 134
10.2 在託管類型中重載操作符 135
10.2.1 重載算術操作符 135
10.2.2 使用靜態操作符重載 136
10.2.3 可以重載哪些操作符 138
10.2.4 實現邏輯操作符 140
10.2.5 實現遞增和遞減 143
10.2.6 操作符和引用類型 144
10.2.7 操作符重載規範 145
快速參考 145
第11章 異常處理 146
11.1 什麼是異常 146
11.1.1 異常的工作原理 147
11.1.2 不同的異常類型 148
11.2 拋出異常 148
11.3 處理異常 150
11.3.1 使用try和catch構造 150
11.3.2 自定義異常處理 152
11.3.3 使用異常層次結構 153
11.3.4 異常和構造器一起使用 153
11.3.5 異常嵌套和重新拋出 155
11.3.6 finally塊 157
11.3.7 catch(...)塊 157
11.4 創建自己的異常類型 158
11.5 使用safe_cast進行動態類型轉換 160
11.6 跨語言使用異常 160
快速參考 163
第12章 數組和集合 165
12.1 原生C++數組 165
12.1.1 將數組傳給函式 167
12.1.2 數組初始化 169
12.1.3 多維數組 169
12.1.4 動態創建數組 170
12.2 泛型類型 171
12.3 託管數組 172
12.3.1 初始化 174
12.3.2 數組和引用類型 174
12.3.3 對數組使用for each循環 175
12.3.4 多維數組 176
12.4 .NET數組類 176
12.4.1 基本數組操作 178
12.4.2 更多高級數組操作 179
12.4.3 使用枚舉器 181
12.5 其他.NET集合類 182
12.5.1 List<T>類 183
12.5.2 SortedList<K,V>類 185
12.6 泛型和模板 186
12.6.1 STL/CLR庫 187
12.6.2 STL的三個概念 188
快速參考 189
第13章 屬性 190
13.1 什麼是屬性 190
13.2 實現標量屬性 191
13.2.1 屬性中的錯誤 193
13.2.2 自動實現的屬性 193
13.2.3 唯讀和只寫屬性 194
13.2.4 屬性、繼承和接口 195
13.3 實現索引屬性 196
13.3.1 Bank例子 196
13.3.2 創建Account類的屬性 198
13.4 向Bank類添加賬戶 199
13.4.1 實現Add和Remove方法 199
13.4.2 實現索引屬性來獲取賬戶 201
快速參考 203
第14章 委託和事件 204
14.1 什麼是委託 204
14.2 委託的作用 205
14.2.1 定義委託 205
14.2.2 使用委託 206
14.3 什麼是事件 210
14.3.1 實現事件源類 211
14.3.2 實現事件接收者 213
14.3.3 綜合運用 214
快速參考 218
第15章 .NET Framework類庫 219
15.1 什麼是.NET Framework 219
15.1.1 公共語言運行時 219
15.1.2 Microsoft中間語言 220
15.1.3 通用類型系統 220
15.1.4 公共語言規範 220
15.1.5 .NET Framework類庫 220
15.1.6 程式集 221
15.1.7 元數據 221
15.2 .NET Framework命名空間 223
15.2.1 在C++應用程式中使用命名空間 224
15.2.2 System命名空間 225
15.2.3 Collections命名空間 226
15.2.4 Collections接口 227
15.2.5 Diagnostics命名空間 227
15.2.6 IO命名空間 228
15.2.7 Windows命名空間 228
15.2.8 .Net命名空間 229
15.2.9 ServiceModel命名空間 229
15.2.10 Xml命名空間 229
15.2.11 Data命名空間 230
15.2.12 Web命名空間 230
快速參考 231
第III部分 使用.NET Framework
第16章 處理檔案 235
16.1 System::IO命名空間 235
16.2 使用reader和writer進行文本I/O 236
16.2.1 使用TextWriter 236
16.2.2 FileStream類 239
16.2.3 使用TextReader 240
16.3 處理檔案和 242
16.4 二進制I/O 249
16.4.1 BinaryWriter類 249
16.4.2 BinaryReader類 250
快速參考 254
第17章 讀寫XML 256
17.1 XML和.NET 256
17.1.1 .NET XML命名空間 256
17.1.2 XML處理類 257
17.2 用XmlReader解析XML 257
17.2.1 創建XmlReader 260
17.2.2 XmlReaderSettings類 260
17.2.3 驗證良構XML 264
17.2.4 處理特性 264
17.2.5 解析XML時進行驗證 265
17.3 用XmlTextWriter寫XML 267
17.4 使用XmlDocument 271
17.4.1 什麼是W3C DOM 272
17.4.2 XmlDocument類 272
17.4.3 XmlNode類 274
快速參考 280
第18章 使用ADO.NET 281
18.1 什麼是ADO.NET 281
18.1.1 ADO.NET數據提供程式 282
18.1.2 ADO.NET命名空間 282
18.1.3 ADO.NET程式集 283
18.2 創建連線式應用程式 283
18.2.1 連線資料庫 284
18.2.2 創建和執行命令 286
18.2.3 執行數據修改命令 287
18.2.4 執行查詢並解析結果 288
18.3 創建斷開式應用程式 289
18.4 使用DataSet執行斷開式操作 290
快速參考 295
第19章 用WCF編寫服務 297
19.1 什麼是Windows Communication Foundation 297
19.1.1 分散式系統 297
19.1.2 服務 298
19.1.3 連線性 298
19.2 WCF基礎 299
19.2.1 端點 299
19.2.2 地址 299
19.2.3 綁定 300
19.2.4 協定 301
19.2.5 訊息交換模式 302
19.2.6 行為 303
19.3 創建服務 303
19.3.1 編寫服務客戶端 305
19.3.2 向服務添加元數據 306
19.3.3 使用代理訪問服務 309
快速參考 311
第20章 Windows Store應用程式基礎 312
20.1 Windows UI應用程式簡史 312
20.1.1 Win32 API 312
20.1.2 MFC 313
20.1.3 Windows窗體 313
20.1.4 WPF 313
20.1.5 Windows 8和Windows Store 314
20.1.6 選擇哪個UI庫 314
20.2 Windows Store套用簡介 315
20.3 寫Windows Store套用 317
20.3.1 創建第一個Windows Store 套用 317
20.3.2 檢查項目 320
20.4 XAML簡介 321
20.4.1 什麼是XAML 321
20.4.2 XAML語法 322
20.4.3 XAML控制項 323
20.4.4 布局控制項 324
20.4.5 事件處理 328
20.5 C++/CX和Windows RT 329
20.5.1 Windows RT 329
20.5.2 元數據 330
20.5.3 C++/CX語法 330
20.5.4 常用命名空間 332
快速參考 334
第21章 Windows Store套用進階 335
21.1 開發簡單計算器 335
21.1.1 布局數字按鈕 335
21.1.2 處理數字輸入 338
21.1.3 添加數學運算 339
21.1.4 執行運算 342
21.1.5 測試計算器 345
21.1.6 改進圖形 347
21.1.7 處理不同進制 349
21.1.8 使用套用欄 358
21.1.9 添加共享 361
21.1.10 改進思路 365
快速參考 365
第IV部分 高 級 主 題
第22章 使用非託管代碼 369
22.1 託管和非託管代碼 369
22.1.1 混合類 369
22.1.2 GCHandle類型 370
22.2 固定和裝箱 372
22.2.1 內部指針 372
22.2.2 固定指針 372
22.2.3 裝箱和拆箱 373
22.2.4 裝箱 374
22.2.5 拆箱 374
22.3 使用P/Invoke調用Win32 API中的函式 375
22.3.1 DllImportAttribute類 378
22.3.2 傳遞結構 379
快速參考 382
第23章 特性和反射 383
23.1 元數據和特性 383
23.2 使用預定義特性 385
23.2.1 AssemblyInfo.cpp檔案 385
23.2.2 使用預定義特性類 386
23.3 定義自己的特性 389
23.3.1 特性類的屬性 390
23.3.2 特性類設計規範 390
23.3.3 創建自定義特性 391
23.4 利用反射獲取特性數據 394
23.4.1 Type類 394
23.4.2 訪問標準特性 395
23.4.3 訪問自定義特性數據 396
快速參考 398
第24章 兼容COM 400
24.1 COM組件和COM互操作 400
24.2 在.NET代碼中使用COM組件 400
24.2.1 RCW的工作原理 401
24.2.2 創建和使用RCW 402
24.2.3 處理COM錯誤 404
24.2.4 COM對象晚期綁定 405
24.3 .NET組件作為COM組件使用 406
快速參考 408
譯者後記 409