Dot-Net
轉換與 CType
我對存在兩個看似相同的 VB.NET 函式感到有些困惑:
CType(args)和Convert.ToType(args). 一般來說,我對 .NET 和 VB 還很陌生,所以我不太確定它們中的一個是 VB6 的遺留物還是它們實際上有不同的目的/用途/限制。其中之一是更新/更安全的嗎?是否有理由使用其中一種而不使用另一種?乾杯! = )
CType來自VB6時代,在效率方面並不是最好的。您應該能夠使用
Convert.ToXxxx()方法進行轉換和轉換,TryCast()而DirectCast()不是CType().
請參閱MSDN 上的此頁面。(轉換函式、CType、DirectCast 和 System.Convert 部分)。
該部分的結論如下:
建議:對於大多數轉換,使用內在語言轉換關鍵字(包括CType)以簡潔明了,並在類型之間轉換時允許編譯器優化。使用 DirectCast將 Object 轉換為 String 並在已知嵌入類型(即不需要強制)時提取裝在 Object 變數中的值類型。