1. 程式人生 > >CLR via C#第五章:程式語言的基元型別

CLR via C#第五章:程式語言的基元型別

基元型別的概念:編譯器直接支援的資料型別稱為基元型別。基元型別會直接對映到Frameeork類庫中存在的型別。

                   

            Int32 i = 21;
            Int64 l = i;

 像這樣的沒有繼承關係的FCL型別之間的相互轉換。按理說是不能通過的(根據第四章型別物件的知識),但是這樣編寫實際上是不會出錯的。原因是編譯器非常熟悉基元型別,並在編譯程式碼時應用他自己的特殊規則。

首先:編譯器能執行基元型別之間的隱式或者顯式的轉換。但是要在確保安全的前提下。所謂的安全是指,不能丟失資料。否則要求顯示轉換。(C#總是對資料進行截斷處理,比如說,6.8轉換為整數時,會直接取6.而不是向上取整。除非進行其他的操作來控制向上取整)