關鍵字用於聲明隱式的用戶定義類型轉換運算符。 如果可以確保轉換過程不會造成數據丟失,則可使用該關鍵字在用戶定義類型和其他類型之間進行隱式轉換。 引用摘自: "implicit(C 參考)" 仍以Student求和舉例 不使用 求和 使用 ...
implicit
關鍵字用於聲明隱式的用戶定義類型轉換運算符。 如果可以確保轉換過程不會造成數據丟失,則可使用該關鍵字在用戶定義類型和其他類型之間進行隱式轉換。
引用摘自:implicit(C# 參考)
仍以Student求和舉例
class Student
{
/// <summary>
/// 語文成績
/// </summary>
public double Chinese { get; set; }
/// <summary>
/// 數學成績
/// </summary>
public double Math { get; set; }
}
不使用implicit
求和
class Program
{
static void Main(string[] args)
{
var a = new Student
{
Chinese = 90.5d,
Math = 88.5d
};
//a的總成績 語文和數據的總分數
Console.WriteLine(a.Chinese + a.Math);
}
}
使用implicit
class Student
{
/// <summary>
/// 語文成績
/// </summary>
public double Chinese { get; set; }
/// <summary>
/// 數學成績
/// </summary>
public double Math { get; set; }
/// <summary>
/// 隱式求和
/// </summary>
/// <param name="a"></param>
public static implicit operator double(Student a)
{
return a.Chinese + a.Math;
}
}
求和:
class Program
{
static void Main(string[] args)
{
var a = new Student
{
Chinese = 90.5d,
Math = 88.5d
};
double total = a;
//a的總成績 語文和數據的總分數
Console.WriteLine(total);
}
}