天天看點

變量名與變量位址

變量名是進階語言所定義的一種東西,它主要是為了友善的尋址。      
在編譯過程中,每個變量都有一個變量名,每個名都對應一個應用,即變量的首位元組位址。也就是說變量名與其位址具有一對一的映射關系,然而在編譯後變量的名字不存在了,C++為了區分類似于形式的變量名和真實位址就必須存在一種機制。       
對于一個變量a,不加&,就表示取a的值,而加了&就是取a在記憶體中的位址,而後者的值隻能賦給指針變量。      
其實後來發現這種設計存在不良之處,也就是為什麼Java,C#,删除了他們的區分,統一使用引用(與指針有細微的差别,但機制是一樣)      
具體的了解後續補充