Sprawdź kod poniżej:Dlaczego powinienem używać niejawnego/jawnego operatora?
class Money
{
public Money(decimal amount)
{
Amount = amount;
}
public decimal Amount { get; set; }
public static implicit operator decimal(Money money)
{
return money.Amount;
}
public static explicit operator int(Money money)
{
return (int)money.Amount;
}
}
ja nie rozumiem, jak byłoby w moim kodu, kulisy i po prostu robić metody takie jak:
public static int returnIntValueFrom(Money money)
{
return (int)money.Amount;
}
Czy nie byłoby łatwiej i wyraźniej do wdrożenia ?
Co myślisz, że możesz napisać takie rzeczy jak 'return (int) money.Amount;' in your code? – mbeckish
To jest próbka znaleziona w zestawie treningowym Microsfot (Egzamin 70-483 Programowanie w języku C#, Wouter de Kort, O'Reilly, 2013 (strona 110 ROZDZIAŁ 2 Tworzenie i używanie typów)) –
@WilnerAvila - Gdy dojdziesz do 20 reputacja, możesz zawsze zadawać pytania typu "Nie rozumiem" w [C# chat room] (http://chat.stackoverflow.com/rooms/7/c). Jest to lepszy format dla szybkich wyjaśnień niż SO. –