這兩種方法有什麼區別?他們都返回相同的類型,這是float
,但一個使用鑄造,另一個不。鑄造類型和轉換
public class Para1
{
public float method1(int z)
{
return z;
}
public float method2(int z)
{
return (float) z;
}
}
這兩種方法有什麼區別?他們都返回相同的類型,這是float
,但一個使用鑄造,另一個不。鑄造類型和轉換
public class Para1
{
public float method1(int z)
{
return z;
}
public float method2(int z)
{
return (float) z;
}
}
的一種是採用隱式轉換從int
到float
而另一個使用顯式轉換。在這種情況下,這相當於同樣的事情。
第一個函數將int轉換爲類型float隱式。第二個是明確的。有時需要顯式強制轉換,並且Visual Studio不能隱式轉換複雜類型。
對於.NET,特別是C#,它不是Visual Studio,不知道如何轉換類型。類型轉換被明確定義爲「運算符」,編譯器將根據它們是否被定義爲['implicit']來使用(http://msdn.microsoft.com/zh-cn/library/z5z9kes2.aspx)或['explicit'](http://msdn.microsoft.com/en-us/library/xhbhezf4.aspx)。編譯器也不會爲您執行多個隱含步驟。 – pickypg 2013-03-02 17:45:22
沒事做中我們使用鑄造時,這種情況下,哪些方法是完美的人使用,爲什麼?謝謝 – 2013-03-02 17:42:00
method2更具可讀性,但沒有一個比另一個更好。 – 2013-03-02 17:44:29