引言
第I部分 關鍵字、修飾符和語句
第1章 關鍵字
1.1 __alignof關鍵字
1.2 __asm關鍵字
1.3 __assume關鍵字
1.4 __based關鍵字
1.5 __cdecl關鍵字
1.6 __declspec關鍵字
1.7 __event關鍵字
1.8 __except關鍵字
1.9 __fastcall關鍵字
1.10 __finally關鍵字
1.11 __forceinline關鍵字
1.12 __hook關鍵字
1.13 __identifier關鍵字
1.14 __if_exists關鍵字
1.15 __if_not_exists關鍵字
1.16 __inline關鍵字
1.17 __int8、__intl6、__int32和__int64關鍵字
1.18 __interface關鍵字
1.19 __leave關鍵字
1.20 __m64關鍵字
1.21 __m128關鍵字
1.22 __m128d關鍵字
1.23 __m128i關鍵字
1.24 __multiple_inheritance關鍵字
1.25 __noop關鍵字
1.26 __raise關鍵字
1.27 __single_inheritance關鍵字
1.28 __stdcall關鍵字
1.29 __super關鍵字
1.30 __uuhook關鍵字
1.31 __uuidof關鍵字
1.32 __virtual_inheritance關鍵字
1.33 __w64關鍵字
1.34 bool關鍵字
1.35 break關鍵字
1.36 case關鍵字
1.37 catch關鍵字
1.38 char關鍵字
1.39 class關鍵字
1.40 const關鍵字
1.41 const_cast關鍵字
1.42 continue關鍵字
1.43 default關鍵字
1.44 delete關鍵字
1.45 deprecate關鍵字
1.46 dllexport和dllimport關鍵字
1.47 do關鍵字
1.48 double關鍵字
1.49 dynamic_cast關鍵字
1.50 else關鍵字
1.51 enum關鍵字
1.52 explicit關鍵字
1.53 extern關鍵字
1.54 false關鍵字
1.55 float關鍵字
1.56 for關鍵字
1.57 friend關鍵字
1.58 goto關鍵字
1.59 if關鍵字
1.60 inline關鍵字
1.61 int關鍵字
1.62 long關鍵字
1.63 mutable關鍵字
1.64 naked關鍵字
1.65 namespace關鍵字
1.66 new關鍵字
1.67 noinline關鍵字
1.68 noreturn關鍵字
1.69 nothrow關鍵字
1.70 novtable關鍵字
1.71 operator關鍵字
1.72 private關鍵字
1.73 property關鍵字
1.74 protected關鍵字
1.75 public關鍵字
1.76 register關鍵字
1.77 reinterpret_cast關鍵字
1.78 return關鍵字
1.79 selectany關鍵字
1.80 short關鍵字
1.81 signed關鍵字
1.82 sizeof關鍵字
1.83 static關鍵字
1.84 static_cast關鍵字
1.85 struct關鍵字
1.86 switch關鍵字
1.87 template關鍵字
1.88 this關鍵字
1.89 thread關鍵字
1.90 throw關鍵字
1.91 true關鍵字
1.92 try關鍵字
1.93 try-except關鍵字
1.94 try-finally關鍵字
1.95 typedef關鍵字
1.96 typeid關鍵字
1.97 typename關鍵字
1.98 union關鍵字
1.98.1 聲明聯(lián)合
1.98.2 使用聯(lián)合
1.99 unsigned關鍵字
1.100 using關鍵字
1.100.1 using關鍵字
1.100.2 using關鍵字
1.101 uuid關鍵字
1.102 virtual關鍵字
1.103 void關鍵字
1.104 volatile關鍵字
1.105 while關鍵字
第2章 控制對類成員的訪問
第3章 微軟專用的修飾符
3.1 基尋址
3.1.1 基指針__based語法
3.1.2 基指針
3.2 __cdecl調用約定
3.3 __stdcall調用約定
3.4 __fastcall調用約定
3.5 __declspec調用約定
3.5.1 deprecated
3.5.2 dllexport和dllimport
3.5.3 naked屬性
3.5.4 noinline屬性
3.5.5 noreturn關鍵字
3.5.6 nothrow屬性
3.5.7 novtable屬性
3.5.8 property屬性
3.5.9 selectany屬性
3.5.10 thread關鍵字
3.5.11 uuid屬性
3.6 __w64調用約定
第4章 語句
4.1 帶標記語句
4.2 表達式語句
4.3 空語句
4.4 復合語句
4.5 選擇語句
4.5.1 if-else語句
4.5.2 __if_exists語句
4.5.3 __if_not_exists語句
4.5.4 switch語句
4.6 迭代語句
4.6.1 while語句
4.6.2 do-while語句
4.6.3 for語句
4.7 跳轉語句
4.7.1 break語句
4.7.2 continue語句
4.7.3 return語句
4.7.4 goto語句
4.8 聲明語句
4.8.1 自動對象的聲明
4.8.2 靜態(tài)對象的聲明
第II部分 C++特性
第5章 運算符重載
5.1 運算符重載的通用規(guī)則
第6章 C++運算符
6.1 加法類運算符
6.2 賦值類運算符
6.3 按位異或運算符^
6.4 同或運算符|
6.5 逗號運算符,
6.6 條件運算符?:
6.7 邏輯與運算符&&
6.8 邏輯或運算符||
6.9 乘法類運算符
6.10 指向成員的指針類運算符
6.11 下標運算符[]
6.12 函數調用運算符()
6.13 轉換運算符()
6.14 成員訪問運算符
6.15 后綴增量運算符和后綴減量運算符
6.16 引用運算符&
6.17 關系運算符
6.18 相等類運算符
6.19 范圍解析運算符::
6.20 移位類運算符
6.21 間接引用運算符*
6.22 address-of運算符&
6.23 邏輯非運算符!
6.24 求補運算符~
6.25 前綴增量運算符和前綴減量運算符
6.26 sizeof運算符
6.27 delete運算符
6.28 new運算符
第7章 屬性化編程
aggregatable屬性
aggregates屬性
appobject屬性
async_uuid屬性
bindable屬性
call_as屬性
case屬性
coclass屬性
com_interfacew_entry屬性
control屬性
cpp_quote屬性
custom屬性
db_accessor屬性
db_column屬性
db_command屬性
db_param屬性
db_source屬性
db_table屬性
default屬性
defaultbind屬性
defaultcollelem屬性
defaultvalue屬性
defaultvtable屬性
dispinterface屬性
displaybind屬性
dual屬性
emitidl屬性
entry屬性
event_receiver屬性
Event_source屬性
export屬性
first_is屬性
helpcontext屬性
helpefile屬性
helpstring屬性
helpstringcontext屬性
helpstringdll屬性
hidden屬性
id屬性
idl_module屬性
idl_quote屬性
iid_is屬性
immediatebind屬性
jimplements_category屬性
import屬性
importlib屬性
in屬性
Include屬性
includelib屬性
last_is屬性
lcid屬性
length_is屬性
library_block屬性
licensed屬性
local屬性
max_is屬性
module屬性
ms_union屬性
no_injected_text屬性
nonbrowsable屬性
nonextensible屬性
odl屬性
object屬性
oleautomation屬性
optional屬性
out屬性
pointer_default屬性
pragma屬性
progid屬性
propget屬性
propput屬性
propputref屬性
ptr屬性
public屬性
range屬性
rdx屬性
readonly屬性
ref屬性
registration_script屬性
requestedit屬性
requires_category屬性
restricted屬性
retval屬性
satype屬性
size_is屬性
source屬性
string屬性
support_error_info屬性
switch_is屬性
switch_type屬性
synchronize屬性
threading屬性
transmit_as屬性
uidefault屬性
unique屬性
usesgetlasterror屬性
uuid屬性
v1_enum屬性
vararg屬性
version屬性
vi_progid屬性
wire_marshal屬性
第8章 聲明
8.1 說明符
8.1.1 存儲類說明符
8.1.2 函數說明符
8.1.3 typedef說明符
8.1.4 friend說明符
8.1.5 C++類型說明符
8.2 const和volatile聲明
8.2.1 const關鍵字
8.2.2 volatile關鍵字
8.3 C++枚舉聲明
8.3.1 枚舉器常量的定義
8.3.2 轉換和枚舉類型
8.4 鏈接規(guī)范
8.5 命名空間聲明
8.5.1 namespace聲明
8.5.2 命名空間別名
8.5.3 定義命名空間成員
8.5.4 using聲明
8.5.5 using指令
8.5.6 顯式限定
第9章 聲明符
9.1 聲明符概述
9.2 類型名稱
9.3 C++抽象聲明符
9.3.1 多義性解決方案
9.3.2 指針
9.3.3 引用
9.3.4 指向成員的指針
9.3.5 繼承關鍵字
9.3.6 數組
9.3.7 函數聲明
9.3.8 默認參數
9.3.9 C++函數定義
9.3.10 帶可變參數列表的函數
9.3.11 初始值設定項
第10章 類、結構和聯(lián)合
10.1 類概述
10.2 類名
10.2.1 聲明類名以及訪問類名
10.2.2 typedef語句和類
10.3 類成員
10.3.1 類成員聲明的語法
10.3.2 在成員列表中聲明未確定大小的數組
10.3.3 類成員數據的存儲
10.3.4 成員命名限制
10.4 成員函數
10.4.1 成員函數概述
10.4.2 this指針
10.5 靜態(tài)數據成員
10.6 聯(lián)合
10.7 C++位域
10.8 嵌套類聲明
10.9 類范圍中的類型名稱
第11章 派生類
11.1 派生類概述
11.2 單一繼承
11.3 多重繼承
11.4 多重基類
11.5 虛擬基類
11.6 虛函數
11.7 顯式重載
11.8 抽象類
11.9 范圍規(guī)則總結
第12章 預處理器
12.1 預處理器指令
12.1.1 #define指令
12.1.2 error指令
12.1.3 #if、#elif、#else和#endif指令
12.1.4 #ifdef和#ifndef指令
12.1.5 #import指令
12.1.6 #include指令
12.1.7 #line指令
12.1.8 Null指令
12.1.9 #pragma指令
12.1.10 #undef指令
12.1.11 #using指令
12.2 預處理器運算符
12.2.1 字符串化運算符(#)
12.2.2 字符化運算符(#@)
12.3 宏
12.3.1 宏和C++
12.3.2 預定義宏
第III部分 C++規(guī)范的托管擴展
第13章 C++托管擴展規(guī)范
13.1 簡介
13.2 托管類型概述
13.3 托管擴展關鍵字
13.3.1 __gc類
13.3.2 __value類
13.3.3 __gc接口
13.3.4 __gc指針
13.3.5 __gc引用
13.3.6 委托
13.3.7 事件
13.3.8 System::String
13.3.9 __value枚舉
13.3.10 屬性
13.3.11 異常處理
13.3.12 嵌套類
13.3.13 托管類與非托管類的混合
13.3.14 __abstract關鍵字
13.3.15 __sealed關鍵字
13.3.16 靜態(tài)類構造函數
13.3.17 托管運算符
13.3.18 元數據
13.3.19 __identifier關鍵字
13.3.20 __typeof關鍵字
13.3.21 為運行庫編譯代碼
13.3.22 不支持的特性
附錄A C++編譯器選項
附錄B Visual C++鏈接器選項