implicit C# with Example
The implicit keyword is used to overload a conversion operator. For example, you may declare a Fraction class that should automatically be converted to a double when needed, and that can be automatically converted from int: class Fraction(int numerator, int denominator) { public int Numerator { get; } = numerator; public int Denominator { get; } = denominator; // ... public static implicit operator double(Fraction f) { return f.Numerator / (double) f.Denominator; } public static implicit operator Fraction(int i) { return new Fraction(i, 1); } }