C 的顯式列舉轉換

2021-06-08 11:34:58 字數 526 閱讀 7098

顯式列舉轉換包括以下內容:

●從sbye,byte,short,ushort,int,uint,long,ulong,char,float,double,或decimal到任何列舉型別。

●從任何列舉型別到sbyte,byte,short,ushort,int,uint,long,ulong,char,float,double,或decimal。

●從任何列舉型別到任何其它列舉型別。

顯式列舉轉換是這樣進行的:它實際上是列舉型別的元素型別與相應型別之間的隱式或顯式轉換。比如,有乙個元素型別為int的列舉型別e,則當執行從e到byte的顯式列舉轉換時,實際上作的是從int到byte的顯式數字轉換;當執行從byte到e的顯式列舉轉換時,實際上是執行byte到int的隱式數字轉換。

比如,對程式6-2,我們改寫如下:

程式清單6-7:

using system;

enum weekday;

class test

}

程式的輸出是:

C 顯式轉換

標準c 包含乙個顯式的轉換語法 static cast 用於 良性 和 適度良性 的轉換,包括不用強制轉換 const cast 用於 const 和 或 volatile 進行轉換 reinterpret cast 轉換為完全不同的意思。為了安全的使用它,關鍵必須轉換回原來的型別。轉換成的型別一般...

C 顯式轉換

任何具有明確定義的型別轉換,只要不包含底層const,都可以使用static cast c primer 更為簡單的解釋就是,使用這個型別轉換符,能夠進行比較自然的轉換,類別相近的轉換,而有一些型別差距明顯的轉換則不可以,例如 不能用於不同型別的指標之間轉換 void 除外 不能用於整型與指標之間的...

C 顯式型別轉換

對於型別轉換,我在查資料的時候看到了一種很有意思的解釋,我們可以這樣理解型別轉換 某塊記憶體中的資料是不變的,而型別就是我們戴上的眼鏡,當我們戴上一種眼鏡後,我們就會用對應的型別來解釋記憶體中的資料,這樣不同的解釋就得到了不同的資訊。所謂強制型別轉換實際上就是換上另一副眼鏡後再來看同樣的那塊記憶體資...