C# 3.0 铸造和转化

C# 3.0 铸造和转化,c#-3.0,C# 3.0,C#2008中的强制转换和转换之间有什么区别?强制转换通常较慢,并且可以执行隐式和显式转换运算符一个区别是转换方法允许特定格式(即IFormatProvider)强制转换允许您安全地转换某些数据类型,例如double->int double a = 3.5; int b = (int) a; //fraction will be truncated 这里cast采用3.5的二进制表示,并将其转换为整数表示。因为整数没有分数,所以它被删除,也被允许。以这种方式将字符串转换为整数并不简单,编译器也

C#2008中的强制转换和转换之间有什么区别?

强制转换通常较慢,并且可以执行隐式和显式转换运算符

一个区别是转换方法允许特定格式(即IFormatProvider)

强制转换允许您安全地转换某些数据类型,例如double->int

double a = 3.5;
int b = (int) a; //fraction will be truncated
这里cast采用3.5的二进制表示,并将其转换为整数表示。因为整数没有分数,所以它被删除,也被允许。以这种方式将字符串转换为整数并不简单,编译器也不允许这样做

Convert更智能,可以将更多数据类型从一种转换为另一种,例如string->boolean

string myString = "true";
bool myBool = Convert.ToBoolean(myString);

我很想知道你为什么说演员阵容较慢?请看一下Convert.ToInt32(双值)的实现。它最终在内部做了一个cast和额外的操作。这个问题非常模糊。在哪种情况下?你说的是转换运算符吗?可能是