引用解釋:
(1)引用僅是變量的別名,而不是實實在在地定義了一個變量,因此引用本身並不占用內存,而是和目標變量共同指向目標變量的內存地址,即共用內存
(2)引用和目標變量的地址是一樣的,對引用的操作與對變量直接操作完全一樣,即對引用的修改就是對目標變量的修改
(3)表達式中的取地址符&不再是取變量的地址,而是用來表示該變量是引用類型的變量。
(4)定義一個引用時,必須對其初始化,即 引用了誰
參數調用:
幾種形參方式 - 空間分配比較
(1)使用一般變量傳遞函數的參數,即值傳遞,當發生函數調用時,需要給形參分配存儲單元,形參變量是實參變量的副本;
如果傳遞的是對象,還將調用拷貝構造函數
(2)使用指針作為函數的參數在被調函數中同樣要給形參分配存儲單元,調用時必須用變量的地址作為實參
(2)使用引用傳遞函數的參數,在內存中並沒有產生實參的副本
代碼(部分):
bool push(PCB &pcb) //防止在對插入隊列操作時鏈接到錯誤的地址 {
略.., }
bool push(PCB pcb) {
略.., }
兩種對比后 輸出的地址不同,且可能會引起系統錯誤結束
參詳:http://www.cnblogs.com/gw811/archive/2012/10/20/2732687.html