抽象基類和純虛擬函式
在設計時,常常希望基類僅僅作為其派生類的一個介面。這就是說,僅想對基類進行向上型別轉換,使用它的介面,而不希望使用者實際地建立一個基類的物件。要做到這點,可以在基類中加入至少一個純虛擬函式,來使基類成為抽象類。純虛擬函式使用關鍵字virtual,並且在其後面加上=0。如果某人試著生成一個抽象類的物件,編譯器會制止他,這個工具允許生成特定的設計。
當繼承一個抽象類時,必須實現所有的純虛擬函式,否則繼承出的類也將是一個抽象類。建立一個純虛擬函式允許在介面中放置成員函式,而不一定要提供一段可能對這個函式毫無意義的程式碼。同時,純虛擬函式要求出的類對它提供一個定義。純虛擬函式總是變成“啞”函式。
建立公共介面,也就是純虛擬函式抽象類。它能對於每個不同的子類有不同的表示,它建立一個基本的格式。
相關文章
- 介面、虛擬函式、純虛擬函式、抽象類函式抽象
- 021--C++養成之路(純虛擬函式和純抽象類)C++函式抽象
- 虛擬函式 純虛擬函式函式
- 基類指標、虛純虛擬函式、多型性、虛析構指標函式多型
- Java常見知識點彙總(④)——虛擬函式、抽象函式、抽象類、介面Java函式抽象
- C++ 介面(純虛擬函式)C++函式
- 虛擬函式,虛擬函式表函式
- 基類指標,子類指標,虛擬函式,override與final指標函式IDE
- C++純虛擬函式簡介及區別C++函式
- [Lang] 虛擬函式函式
- C++之類解構函式為什麼是虛擬函式C++函式
- 【C++筆記】虛擬函式(從虛擬函式表來解析)C++筆記函式
- 【C++筆記】虛擬函式(從虛擬函式概念來解析)C++筆記函式
- C++ 派生類函式過載與虛擬函式繼承詳解C++函式繼承
- c++虛擬函式表C++函式
- 虛擬函式與多型函式多型
- 虛擬函式的呼叫原理函式
- Java基礎-抽象類和介面Java抽象
- 抽象方法和抽象類抽象
- 虛擬函式的實現原理函式
- C++ 虛擬函式表解析C++函式
- 深入C++成員函式及虛擬函式表C++函式
- 詳解C++中的多型和虛擬函式C++多型函式
- C++多型之虛擬函式C++多型函式
- 內聯(inline)函式與虛擬函式(virtual)的討論inline函式
- JAVA基礎之三-介面和抽象類Java抽象
- 抽象類和介面抽象
- Python抽象基類abcPython抽象
- C++虛擬函式學習總結C++函式
- 建構函式和類函式
- 理解 JavaScript Mutation 突變和 PureFunction 純函式JavaScriptFunction函式
- 函式基礎和函式引數函式
- kvm純命令建立虛擬機器虛擬機
- C++建構函式和解構函式呼叫虛擬函式時使用靜態聯編C++函式
- 虛擬函式的記憶體佈局(上)函式記憶體
- 關於虛擬函式的一些理解函式
- Java —— 流的抽象基類Java抽象
- 多型和抽象類多型抽象