C++ 教程
1. asm
asm (指令字符串):允許在 C++ 程序中嵌入?yún)R編代碼。
2. auto
auto(自動(dòng),automatic)是存儲(chǔ)類型標(biāo)識(shí)符,表明變量"自動(dòng)"具有本地范圍,塊范圍的變量聲明(如for循環(huán)體內(nèi)的變量聲明)默認(rèn)為auto存儲(chǔ)類型。
3. bool
bool(布爾)類型,C++ 中的基本數(shù)據(jù)結(jié)構(gòu),其值可選為 true(真)或者 false(假)。C++ 中的 bool 類型可以和 int 混用,具體來說就是 0 代表 false,非 0 代表 true。bool 類型常用于條件判斷和函數(shù)返回值。
4. break
break(中斷、跳出),用在switch語句或者循環(huán)語句中。程序遇到 break 后,即跳過該程序段,繼續(xù)后面的語句執(zhí)行。
5. case
用于 switch 語句中,用于判斷不同的條件類型。
6. catch
catch 和 try 語句一起用于異常處理。
7. char
char(字符,character)類型,C++ 中的基本數(shù)據(jù)結(jié)構(gòu),其值一般為 0~255 的 int。這 256 個(gè)字符對(duì)應(yīng)著 256 個(gè) ASCII 碼。char 類型的數(shù)據(jù)需要用單引號(hào) ' 括起來。
8.class
class(類)是 C++ 面向?qū)ο笤O(shè)計(jì)的基礎(chǔ)。使用 class 關(guān)鍵字聲明一個(gè)類。
9. const
const(常量的,constant)所修飾的對(duì)象或變量不能被改變,修飾函數(shù)時(shí),該函數(shù)不能改變?cè)谠摵瘮?shù)外面聲明的變量也不能調(diào)用任何非const函數(shù)。在函數(shù)的聲明與定義時(shí)都要加上const,放在函數(shù)參數(shù)列表的最后一個(gè)括號(hào)后。在 C++ 中,用 const 聲明一個(gè)變量,意味著該變量就是一個(gè)帶類型的常量,可以代替 #define,且比 #define 多一個(gè)類型信息,且它執(zhí)行內(nèi)鏈接,可放在頭文件中聲明;但在 C 中,其聲明則必須放在源文件(即 .C 文件)中,在 C 中 const 聲明一個(gè)變量,除了不能改變其值外,它仍是一具變量。如:
const double pi(3.14159); 或 const double pi = 3.14159;
10. const_cast用法:
const_cast<type_id> (expression)
該運(yùn)算符用來修改類型的 const 或 volatile 屬性。除了 const 或 volatile 修飾之外, type_id 和 expression 的類型是一樣的。常量指針被轉(zhuǎn)化成非常量指針,并且仍然指向原來的對(duì)象;常量引用被轉(zhuǎn)換成非常量引用,并且仍然指向原來的對(duì)象;常量對(duì)象被轉(zhuǎn)換成非常量對(duì)象。
11. continue
continue(繼續(xù))關(guān)鍵字用于循環(huán)結(jié)構(gòu)。它使程序跳過代碼段后部的部分,與 break 不同的是,continue 不是進(jìn)入代碼段后的部分執(zhí)行,而是重新開始新的循環(huán)。因而它是"繼續(xù)循環(huán)"之意,不是 break(跳出)。
12. default
default(默認(rèn)、缺?。┯糜?switch 語句。當(dāng) switch 所有的 case 都不滿足時(shí),將進(jìn)入 default 執(zhí)行。default 只能放在 switch 語句所有的 case 之后,并且是可選的。
13. delete
delete(刪除)釋放程序動(dòng)態(tài)申請(qǐng)的內(nèi)存空間。delete 后面通常是一個(gè)指針或者數(shù)組 [],并且只能 delete 通過 new 關(guān)鍵字申請(qǐng)的指針,否則會(huì)發(fā)生段錯(cuò)誤。
14. do
do-while是一類循環(huán)結(jié)構(gòu)。與while循環(huán)不同,do-while循環(huán)保證至少要進(jìn)入循環(huán)體一次。
15. double
double(雙精度)類型,C++ 中的基本數(shù)據(jù)結(jié)構(gòu),以雙精度形式存儲(chǔ)一個(gè)浮點(diǎn)數(shù)。
16. dynamic_cast
dynamic_cast(動(dòng)態(tài)轉(zhuǎn)換),允許在運(yùn)行時(shí)刻進(jìn)行類型轉(zhuǎn)換,從而使程序能夠在一個(gè)類層次結(jié)構(gòu)安全地轉(zhuǎn)換類型。dynamic_cast 提供了兩種轉(zhuǎn)換方式,把基類指針轉(zhuǎn)換成派生類指針,或者把指向基類的左值轉(zhuǎn)換成派生類的引用。
17. else
else 緊跟在 if 后面,用于對(duì) if 不成立的情況的選擇。
18. enum
enum(枚舉)類型,給出一系列固定的值,只能在這里面進(jìn)行選擇一個(gè)。
19. explicit
explicit(顯式的)的作用是"禁止單參數(shù)構(gòu)造函數(shù)"被用于自動(dòng)型別轉(zhuǎn)換,其中比較典型的例子就是容器類型。在這種類型的構(gòu)造函數(shù)中你可以將初始長度作為參數(shù)傳遞給構(gòu)造函數(shù)。
20. export
為了訪問其他編譯單元(如另一代碼文件)中的變量或?qū)ο?,?duì)普通類型(包括基本數(shù)據(jù)類、結(jié)構(gòu)和類),可以利用關(guān)鍵字 extern,來使用這些變量或?qū)ο髸r(shí);但是對(duì)模板類型,則必須在定義這些模板類對(duì)象和模板函數(shù)時(shí),使用標(biāo)準(zhǔn) C++ 新增加的關(guān)鍵字 export(導(dǎo)出)。
21. extern
extern(外部的)聲明變量或函數(shù)為外部鏈接,即該變量或函數(shù)名在其它文件中可見。被其修飾的變量(外部變量)是靜態(tài)分配空間的,即程序開始時(shí)分配,結(jié)束時(shí)釋放。用其聲明的變量或函數(shù)應(yīng)該在別的文件或同一文件的其它地方定義(實(shí)現(xiàn))。在文件內(nèi)聲明一個(gè)變量或函數(shù)默認(rèn)為可被外部使用。在 C++ 中,還可用來指定使用另一語言進(jìn)行鏈接,這時(shí)需要與特定的轉(zhuǎn)換符一起使用。目前僅支持 C 轉(zhuǎn)換標(biāo)記,來支持 C 編譯器鏈接。使用這種情況有兩種形式:
extern "C" 聲明語句 extern "C" { 聲明語句塊 }
22. false
false(假的),C++ 的基本數(shù)據(jù)結(jié)構(gòu) bool 類型的值之一。等同于 int 的 0 值。
23. float
float(浮點(diǎn)數(shù)),C++ 中的基本數(shù)據(jù)結(jié)構(gòu),精度小于 double。
24. for
for 是 C++ 中的循環(huán)結(jié)構(gòu)之一。
25. friend
friend(友元)聲明友元關(guān)系。友元可以訪問與其有 friend 關(guān)系的類中的 private/protected 成員,通過友元直接訪問類中的 private/protected 成員的主要目的是提高效率。友元包括友元函數(shù)和友元類。
26. goto
goto(轉(zhuǎn)到),用于無條件跳轉(zhuǎn)到某一標(biāo)號(hào)處開始執(zhí)行。
27. if
if(如果),C++ 中的條件語句之一,可以根據(jù)后面的 bool 類型的值選擇進(jìn)入一個(gè)分支執(zhí)行。
28. inline
inline(內(nèi)聯(lián))函數(shù)的定義將在編譯時(shí)在調(diào)用處展開。inline 函數(shù)一般由短小的語句組成,可以提高程序效率。
29. int
int(整型,integer),C++ 中的基本數(shù)據(jù)結(jié)構(gòu),用于表示整數(shù),精度小于 long。
30. long
long(長整型,long integer),C++ 中的基本數(shù)據(jù)結(jié)構(gòu),用于表示長整數(shù)。
31. mutable
mutable(易變的)是 C++ 中一個(gè)不常用的關(guān)鍵字。只能用于類的非靜態(tài)和非常量數(shù)據(jù)成員。由于一個(gè)對(duì)象的狀態(tài)由該對(duì)象的非靜態(tài)數(shù)據(jù)成員決定,所以隨著數(shù)據(jù)成員的改變,對(duì)像的狀態(tài)也會(huì)隨之發(fā)生變化。如果一個(gè)類的成員函數(shù)被聲明為 const 類型,表示該函數(shù)不會(huì)改變對(duì)象的狀態(tài),也就是該函數(shù)不會(huì)修改類的非靜態(tài)數(shù)據(jù)成員。但是有些時(shí)候需要在該類函數(shù)中對(duì)類的數(shù)據(jù)成員進(jìn)行賦值,這個(gè)時(shí)候就需要用到 mutable 關(guān)鍵字。
32. namespace
namespace(命名空間)用于在邏輯上組織類,是一種比類大的結(jié)構(gòu)。
33. new
new(新建)用于新建一個(gè)對(duì)象。new 運(yùn)算符總是返回一個(gè)指針。由 new 創(chuàng)建
34. operator
operator(操作符)用于操作符重載。這是 C++ 中的一種特殊的函數(shù)。
35. private
private(私有的),C++ 中的訪問控制符。被標(biāo)明為 private 的字段只能在本類以及友元中訪問。
36. protected
protected(受保護(hù)的),C++ 中的訪問控制符。被標(biāo)明為 protected 的字段只能在本類以及其繼承類和友元中訪問。
37. public
public(公有的),C++ 中的訪問控制符。被標(biāo)明為 public 的字段可以在任何類
38.register
register(寄存器)聲明的變量稱著寄存器變量,在可能的情況下會(huì)直接存放在機(jī)器的寄存器中;但對(duì) 32 位編譯器不起作用,當(dāng) global optimizations(全局優(yōu)化)開的時(shí)候,它會(huì)做出選擇是否放在自己的寄存器中;不過其它與 register 關(guān)鍵字有關(guān)的其它符號(hào)都對(duì)32位編譯器有效。
39. reinterpret_cast
用法:
reinpreter_cast<type-id> (expression)
type-id 必須是一個(gè)指針、引用、算術(shù)類型、函數(shù)指針或者成員指針。它可以把一個(gè)指針轉(zhuǎn)換成一個(gè)整數(shù),也可以把一個(gè)整數(shù)轉(zhuǎn)換成一個(gè)指針(先把一個(gè)指針轉(zhuǎn)換成一個(gè)整數(shù),在把該整數(shù)轉(zhuǎn)換成原類型的指針,還可以得到原先的指針值)。
40. return
return(返回)用于在函數(shù)中返回值。程序在執(zhí)行到 return 語句后立即返回,return 后面的語句無法執(zhí)行到。
41. short
short(短整型,short integer),C++ 中的基本數(shù)據(jù)結(jié)構(gòu),用于表示整數(shù),精度小于 int。
42. signed
signed(有符號(hào)),表明該類型是有符號(hào)數(shù),和 unsigned 相反。數(shù)字類型(整型和浮點(diǎn)型)都可以用 signed 修飾。但默認(rèn)就是 signed,所以一般不會(huì)顯式使用。
43. sizeof
由于 C++ 每種類型的大小都是由編譯器自行決定的,為了增加可移植性,可以用 sizeof 運(yùn)算符獲得該數(shù)據(jù)類型占用的字節(jié)數(shù)。
44. static
static(靜態(tài)的)靜態(tài)變量作用范圍在一個(gè)文件內(nèi),程序開始時(shí)分配空間,結(jié)束時(shí)釋放空間,默認(rèn)初始化為 0,使用時(shí)可改變其值。靜態(tài)變量或靜態(tài)函數(shù),只有本文件內(nèi)的代碼才可訪問它,它的名字(變量名或函數(shù)名)在其它文件中不可見。因此也稱為"文件作用域"。在 C++ 類的成員變量被聲明為 static(稱為靜態(tài)成員變量),意味著它被該類的所有實(shí)例所共享,也就是說當(dāng)某個(gè)類的實(shí)例修改了該靜態(tài)成員變量,其修改值為該類的其它所有實(shí)例所見;而類的靜態(tài)成員函數(shù)也只能訪問靜態(tài)成員(變量或函數(shù))。類的靜態(tài)成員變量必須在聲明它的文件范圍內(nèi)進(jìn)行初始化才能使用,private 類型的也不例外。
45. static_cast
用法:
static_cast < type-id > ( expression )
該運(yùn)算符把 expression 轉(zhuǎn)換為 type-id 類型,但沒有運(yùn)行時(shí)類型檢查來保證轉(zhuǎn)換的安全性。它主要有如下幾種用法:
注意 static_cast 不能轉(zhuǎn)換掉 expression 的 const、volitale、或者 __unaligned 屬性。
46. struct
struct(結(jié)構(gòu))類型,類似于 class 關(guān)鍵字,與 C 語言兼容(class 關(guān)鍵字是不與 C 語言兼容的),可以實(shí)現(xiàn)面向?qū)ο蟪绦蛟O(shè)計(jì)。
47. switch
switch(轉(zhuǎn)換)類似于 if-else-if 語句,是一種多分枝語句。它提供了一種簡(jiǎn)潔的書寫,并且能夠生成效率更好的代碼。但是,switch 后面的判斷只能是int(char也可以,但char本質(zhì)上也是一種int類型)。switch 語句最后的 default 分支是可選的。
48. template
template(模板),C++ 中泛型機(jī)制的實(shí)現(xiàn)。
49. this
this 返回調(diào)用者本身的指針。
50. throw
throw(拋出)用于實(shí)現(xiàn) C++ 的異常處理機(jī)制,可以通過 throw 關(guān)鍵字"拋出"一個(gè)異常。
51. true
true(真的),C++ 的基本數(shù)據(jù)結(jié)構(gòu) bool 類型的值之一。等同于 int 的非 0 值。
52. try
try(嘗試)用于實(shí)現(xiàn) C++ 的異常處理機(jī)制??梢栽?try 中調(diào)用可能拋出異常的函數(shù),然后在 try 后面的 catch 中捕獲并進(jìn)行處理。
53. typedef
typedef(類型定義,type define),其格式為:
typedef 類型 定義名;
類型說明定義了一個(gè)數(shù)據(jù)類型的新名字而不是定義一種新的數(shù)據(jù)類型。定義名表示這個(gè)類型的新名字。
54. typeid
指出指針或引用指向的對(duì)象的實(shí)際派生類型。
55. typename
typename(類型名字)關(guān)鍵字告訴編譯器把一個(gè)特殊的名字解釋成一個(gè)類型。在下列情況下必須對(duì)一個(gè) name 使用 typename 關(guān)鍵字:
56. union
union(聯(lián)合),類似于 enum。不同的是 enum 實(shí)質(zhì)上是 int 類型的,而 union 可以用于所有類型,并且其占用空間是隨著實(shí)際類型大小變化的。
57. unsigned
unsigned(無符號(hào)),表明該類型是無符號(hào)數(shù),和 signed 相反。
58. using
表明使用 namespace。
59. virtual
virtual(虛的),C++ 中用來實(shí)現(xiàn)多態(tài)機(jī)制。
60. void
void(空的),可以作為函數(shù)返回值,表明不返回任何數(shù)據(jù);可以作為參數(shù),表明沒有參數(shù)傳入(C++中不是必須的);可以作為指針使用。
61. volatile
volatile(不穩(wěn)定的)限定一個(gè)對(duì)象可被外部進(jìn)程(操作系統(tǒng)、硬件或并發(fā)線程等)改變,聲明時(shí)的語法如下:
int volatile nVint;
這樣的聲明是不能達(dá)到最高效的,因?yàn)樗鼈兊闹惦S時(shí)會(huì)改變,系統(tǒng)在需要時(shí)會(huì)經(jīng)常讀寫這個(gè)對(duì)象的值。因此常用于像中斷處理程序之類的異步進(jìn)程進(jìn)行內(nèi)存單元訪問。
62. wchar_t
wchar_t 是寬字符類型,每個(gè) wchar_t 類型占 2 個(gè)字節(jié),16 位寬。漢字的表示就要用到 wchar_t。
文章來源:https://blog.csdn.net/wuxinliulei/article/details/9787901