歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

C++中的靜態關聯與動態關聯

一、關聯:去頂調用的具體對象的過程稱為關聯,就是把一個函數名與一個類對象捆綁在一起,建立一個關聯。一般來說,關聯指把一個標識符和一個存儲地址聯系起來。

二、認知:

函數重載和通過對象名調用的虛函數,在編譯時即可確定其調用的虛函數屬於哪一個類,其過程稱為靜態關聯,由於是在運行前進行關聯的,所以又稱為早期關聯,函數重載屬靜態關聯。

虛函數就是通過基類指針與虛函數的結合來實現多態性的。先定義一個指向基類的指針變量指向對應類的對象,再通過基類指針去調用虛函數。這樣的調用方式編譯系統在編譯時是不能確定調用了哪一個類對象的虛函數的,因為編譯只做靜態語法檢查,不能從語句形式上確定調用對象的。

當在編譯系統在運行階段確定關聯關系時,指針可以先後指向不同的類對象,從而調用同族中不同類的虛函數,這種方式就是動態關聯,也叫做滯後關聯。

Copyright © Linux教程網 All Rights Reserved