多態、malloc和new的區別

一、什麼是多態性?

多態:“一個接口,多個方法”。

靜態多態:在調用函數時在編譯時可確定調用地址則稱之爲靜態多態。

動態多態:在調用函數時在運行時可確定調用地址則稱之爲靜態多態。

C++多態是通過虛函數來實現的,子類重新定義基類成員函數的做法叫做重寫,只有重寫了虛函數才能體現出多態。


二、malloc和new的區別

1、malloc()和free()

(1)C++/C語言的標準庫函數

(2)分配成功則返回指向被分配內存的指針

(3)格式:int *p1 = (int *)malloc(sizeof(int) * length);

(4)malloc需要手工計算字節數


2、new和delete

(1)C++的運算符

(2)可以對類分配內存空間

(3)格式:int *p2 = new int[length];

(4)new自動計算需要分配的空間


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章