靜態和動態聯編

2021-10-06 11:03:38 字數 678 閱讀 5049

原始碼中的函式呼叫解釋為特定的函式**塊被稱為函式名連編.

因為c++語言需要處理函式過載的問題,編譯器在檢視函式名的時候,還要檢視引數,但是c語言直接看函式名就行了,這種聯編可以在編譯過程完成這種聯編被稱為靜態聯編.

使用那個虛函式不能在編譯的時候確定,編譯器是無法確定程式設計師選擇的是那個物件,所以編譯器生成了在程式執行的時候能夠選擇正確的虛函式的方法,這被稱為動態聯編.

一般c++中是不允許將一種型別的指標指向另一種型別的指標,引用也不允許,例如:

double x =

2.5;

long

* p =

&x;int

& r = x;

以上都是錯誤的.

然而,基類指標和引用可以指向派生類物件,例如brass是基類,brassplus是派生類.

brassplus dilly

("annie"

,493222

,2000);

brass * pb =

&dilly;

brass & rb = dilly;

以上都是支援的.

友元函式不能是虛函式,因為友元函式不屬於類中的函式.

析構函式盡量是虛構函式,以至於按正常順序釋放空間.

建構函式為虛構函式沒有什麼意義.

靜態聯編和動態聯編

聯編是指乙個電腦程式自身彼此關聯 使乙個 源程式經過編譯 連線,成為乙個可執行程式 的過程,在這個聯編過程中,需要確定程式中的操作呼叫 函式呼叫 與執行該操作 函式 的 段之間的對映關係,按照聯編所進行的階段不同,可分為靜態聯編和動態聯編。靜態聯編 呼叫函式和被調函式在程式編譯時,他們在記憶體中的位...

靜態聯編和動態聯編

聯編就是將模組或者函式合併在一起生成可執行 的處理過程,同時對每個模組或者函式呼叫分配記憶體位址,並且對外部訪問也分配正確的記憶體位址,它是電腦程式彼此關聯的過程。按照聯編所進行的階段不同,可分為兩種不同的聯編方法 靜態聯編和動態聯編。靜態聯編是指在編譯階段就將函式實現和函式呼叫關聯起來,因此靜態聯...

靜態聯編和動態聯編

聯編就是將模組或者函式合併在一起生成可執行 的處理過程,同時對每個模組或者函式呼叫分配記憶體位址,並且對外部訪問也分配正確的記憶體位址,它是電腦程式彼此關聯的過程。按照聯編所進行的階段不同,可分為兩種不同的聯編方法 靜態聯編和動態聯編。靜態聯編是指在編譯階段就將函式實現和函式呼叫關聯起來,因此靜態聯...