標籤:
class template(類模板)
可以用來定義一個類定義了一組特定類型的類的。類模板template keyword其次是角括弧(<>)附上、的列表來定義。
export keyword(匯出關鍵字)
用來指出編譯器必須記住相關模板定義位置的keyword。支援模板執行個體化的分別編譯模型的編譯器使用它。exportkeyword一般與函數定義一起出現,類通常在相關類實現檔案裡聲明為export。在一個程式中,一個模板僅僅能用export keyword定義一次。
function template(函數模板)
可用於不同類型的函數的定義。函數模板用template keyword後接用角括弧(<>)括住、以逗號分隔的一個或多個形參的列表來定義。
generic handle class(泛型控制代碼類)
儲存和管理指向其它類的指標的類。
泛型控制代碼接受單個類型形參。而且分配和管理指向該類型對象的指標。控制代碼類定義了必要的複製控製成員,它還定義瞭解引用操作符(*)和箭頭成員訪問操作符(->)。泛型句不須要瞭解它管理的類型。
inclusion compilationmodel(包括編譯模型)
編譯器用來尋找模板定義的機制,它依賴於模板定義被包括在每一個使用模板的檔案裡。一般而言,模板定義儲存在一個標頭檔裡。使用模板的隨意檔案必須包括該檔案。
instantiation(執行個體化)
用實際模板實參產生模板特定執行個體的編譯器過程,在該執行個體中,用相應實參取代形參。函數基於調用中使用的實參自己主動執行個體化,使用類模板時必須顯式提供模板實參。
abort
異常終止程式啟動並執行庫函數。
通常,由terminate 調用abort,程式也能夠直接調用abort。abort定義在標頭檔cstdlib 中。
auto_ptr
一個庫類模板,提供對動態指派至的異常安全的訪問。
不能將auto_ptr 對象綁定到數組或者變數指標。auto_ptr對象的複製和賦值是破壞性操作:將對象的全部權從右運算元轉到左運算元。對auto_ptr 對象進行賦值刪除左運算元中的對象,因此。不能將auto_ptrs Object Storage Service在容器中。
catch-all(捕獲全部異常子句)
異常說明符為(...)的 catch 子句。這樣的子句可以捕獲隨意類型的異常,它通經常使用於捕獲為進行局部清除而局部檢測的異常。異常被又一次拋出給程式的其它部分,以處理問題的基本原因。
catch clause(catch 子句)
程式中處理異常的部分,也稱異常處理代碼。
catch子句由keywordcatch 後接異常說明符和語句塊構成。catch內部的代碼完畢的必要工作來處理由異常說明符定義的類型的異常。
constructor order(建構函式次序)
一般而言,應該依照類衍生的資料行表中指定的次序構造基類,衍生類別建構函式應該通過建構函式初始化列表顯式初始化每一個基類。建構函式初始化列表中指定基類的次序不影響構造基類的次序。
在虛繼承中。虛基類在不論什麼其它基類之前構造,它們依照在衍生類別型的衍生的資料行表中(直接或間接地)出如今次序進行構造。僅僅有最低層衍生類別型能夠初始化虛基類,中間基類中出現的基類建構函式初始化列表被忽略。
destructor order(解構函式次序)
應該依照構造次序的逆序撤銷衍生類別對象——首先撤銷派生部分,然後,從最後一個基類開始,撤銷類衍生的資料行表中指定的類。在多重繼承層次中作為基類的類通常應該將它們的解構函式數定義為虛函數。
exception handler(異常處理代碼)
catch 子句的還有一個名稱。
exception handling(異常處理)
管理執行時異常的語言級支援。
代碼中一個獨立開發的部分能夠檢測並“引發”異常,由程式中還有一個獨立開發的部分“處理”該異常。
也就是說,程式的錯誤檢測部分拋出異常。錯誤處理部分在try 塊的catch 子句中處理異常。
exception object(異常對象)
用於在異常的throw 和catch 方之間進行通訊的對象。在拋出點建立該對象。該對象是被拋出運算式的副本。異常對象一直存在,直到該異常最後一個處理代碼結束。異常對象的類型是被拋出運算式的類型。
exception safe(異常安全的)
用於描寫敘述在拋出異常時表現正確的程式的術語。
exceptionspecification(異常說明)
用於函式宣告之上,指出函數拋出什麼(假設有)異常類型。在用圓括弧括住、以逗號分隔、跟在keywordthrow 之後的列表中指定異常類型。空列表表示函數不拋出異常,沒有異常說明的函數能夠拋出不論什麼異常。
exception specifier(異常說明符)
說明給定catch 子句將處理的異常的炻。
異常說明符的行為形參表,由異常對象初始化它的單個形參。像參數傳遞一樣,假設異常說明符是非參考型別,就將異常對象拷貝到catch 中。
file static(檔案靜態)
用keywordstatic 聲明的局部於檔案的名字。在C 語言和標準版本號碼之前的C++ 中,檔案裡的靜態聲明用於聲明僅僅能在單個檔案裡使用的對象,C++不贊成檔案靜態,已經用未命名的命名空間取代它。
function try block(函數測試塊)
是函數體的try 塊。
keywordtry 出如今函數體的左花括弧之前,以出如今函數體的右花括弧之後的catch 子句作為結束。
函數測試塊最經經常使用於包圍建構函式定義,以便捕獲由建構函式初始化式拋出的異常。
global namespace(全域命名空間)
每一個程式中儲存全部全域定義的(隱式)命名空間。
multiple inheritance(多重繼承)
類有多個直接基類的繼承。衍生類別繼承全部基類的成員,通過在類衍生的資料行表中指定多個基類而定義多個基類。每一個基類須要一個單獨的訪問標號。
namespace(命名空間)
將一個庫或其它程式集合定義的全部名字聚焦到單個範圍的機制。與 C++ 中其它範圍不同,命名空間範圍能夠在幾個部分中定義,在程式的不同部分,命名空間能夠是開啟的、關閉的和又一次開啟的。
namespace alias(命名空間別名)
為給定命名空間定義同義字的機制。
namespace N1 = N;
將N1 定義為名為N 的命名空間的還有一名字。一個命名空間能夠有多個別名,而且命名空間名字和它的別名能夠互換使用。
namespace pollution(命名空間汙染)
用來描寫敘述類和函數的全部名字放在全域命名空間時發生什麼情況的術語。假設名字是全域的。則使用由多個獨立團隊編寫的代碼的大程式常常遇到名字衝突。
raise(引發)
經經常使用作拋出的同義字。
C++程式猿互換地使用“拋出”異常或“引發”異常。
rethrow(又一次拋出)
一個空的throw——沒有指定throw。僅僅有捕獲子句或者從catch 直接或間接調用的函數中的又一次拋出才有效,其效果是將接到的異常對象又一次拋出。
scope operator(範圍操作符)
用於訪問命名空間或類中名字的操作符。
stack unwinding(棧展開)
用於描寫敘述在尋找catch 時退出引起被拋出異常的函數的過程。在進入對應catch 之前。撤銷在異常之前構造的局部對象。
terminate
一個庫函數。假設沒有捕獲到異常或者在異常處理過程中發生異常,就調用這個庫函數。該函數通常調用abort 函數來結束程式。
throw e
中斷當前運行路徑的運算式。每一個throw 將控制轉到能夠處理被拋出異常類型的近期的外圍 catch 子句,運算式e 被拷貝到異常對象。
try block(測試塊)
由keywordtry 以及一個或多個try 子句包圍的語句塊。假設try 塊內部的代碼引發一個異常,而一個catch 子句與異常的類型匹配。則由該 catch 處理異常。否則。將異常傳出try 之外,傳給調用鏈中更上層的 catch。
unexpected
一個庫函數,假設被拋出異常違反函數的異常說明,就調用該函數。
unnamed namespace(未命名的命名空間)
未定義名字的命名空間。
未命名的命名空間中定義的名字能夠無須使用範圍操作符而直接訪問。每一個檔案都具有自己的未命名的命名空間,檔案裡的名字在該檔案之外不可見。
using declaration(using 聲明)
將命名空間中單個名字注入當前範圍的機制。
using std::cout;
使得命名空間std 中的名字cout 在當前範圍中可見。能夠無須限定符std:: 而使用名字cout。
using directive(using 指示)
使一個命名空間中的全部名字在using 指示和命名空間本身的近期範圍中可見的機制。
virtual base class(虛基類)
使用keywordvirtual 繼承的基類。即使同一類在層次中作為虛基類出現多次,衍生類別對象中的虛基類部分也僅僅出現一次。在非虛繼承中。建構函式僅僅能初始化自己的直接基類,當對一個類進行虛繼承的時候,由最低層的衍生類別初始化那個類。因此最低層的衍生類別應包括用於其全部虛父類的初始化式。
virtual inheritance(虛繼承)
多重繼承的形式,這樣的形哪裡,衍生類別被包括在分層共用的基類多次的副本。
著作權聲明:本文部落格原創文章。部落格,未經同意,不得轉載。
C++出現電腦術語5