你是否考虑过这个问题:为什么不同类型之间的变量可以赋值,而不需要强制转换类型?如: int i = 1; long l = i; object obj = 1; Exception exception = new ArgumentNullException(); Array array = new string[0]; IEnumerable<int> enumerable = new List<int>(); 其实这是由C#中的隐式转换去完成的.目前,C#中可用的隐式转换有下面这
VB.Net隐式转换和显式转换的方法(转) “隐式转换”不需要源代码中的任何特殊语法.在下面的示例中,在将 k 的值赋给 q 之前,Visual Basic 将该值隐式转换成单精度浮点值. Dim k As Integer Dim q As Double ' Integer widens to Double, so you can do this with Option Strict On. k = 432 q = K “显式转换”使用类型转换关键字.Visual Basic 提供了几个这样