016 虛函式

2022-04-28 23:21:13 字數 975 閱讀 1565

/*

目錄: 一 概念

二 簡單對比

三 簡單對比 - 圖形

*/

一 概念

/*

// 虛函式

虛函式一定是重寫函式,在基類重寫函式前加virtual

使用:1 類物件: 使用什麼物件呼叫對應類的重寫函式

2 基類指標:

(1) 呼叫普通函式: 對應類函式

(2) 呼叫virtual函式: 指標指向的類

原理:

1 物件首部多個指標,指標指向虛表

思想:抽象與實現

基類: 概念、抽象

派生類: 具體物件

靜態繫結和動態繫結

靜態: 編譯時繫結,通過物件呼叫(物件型別)

動態: 執行時繫結,通過位址呼叫(根據虛表)

// 純虛函式:

1 不能定義基類物件

2 派生類必須有重寫函式

3 含純虛函式的基類,叫做抽象類。純虛函式也稱為抽象函式。

*/

二 簡單對比

#pragma once#include 

using

namespace

std;

class

cbase

virtual

void

virtualfunc()

intm_i;

};class cderived :public

cbase

void

virtualfunc()

private

:

int m_j = 0x88;};

intmain()

三 簡單對比 - 圖形

壓縮包: 鏈結

016遞迴函式

方法一 遞迴 include include int fib int n int main 方法二 非遞迴 include include int fib int n return c int main include include int my pow int n,int k int main ...

016 函式過載與函式指標

函式過載與函式指標 當使用過載函式名對函式指標進行賦值時 根據過載規則挑選與函式指標引數列表一致的候選者 嚴格匹配候選者的函式型別與函式指標的函式型別 if 1 void myfunc int a void myfunc char p void myfunc int a,int b void myf...

虛指標,虛函式,虛函式表,純虛函式

虛指標 虛繼承 在使用多重繼承時,如存在 class a 有m a變數 class a1 virtual public a,m a1 class a2 virtual public a m a2 class b public a1,public a2 m b 時 存在以下記憶體儲存順序 虛指標 指向...