Kiểm tra mã dưới đây:Tại sao tôi nên sử dụng toán tử ngầm/rõ ràng?
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;
}
}
Tôi không hiểu làm thế nào nó sẽ có ích trong mã của tôi, couldnt tôi chỉ làm một phương pháp như:
public static int returnIntValueFrom(Money money)
{
return (int)money.Amount;
}
Nó sẽ không được dễ dàng hơn và rõ ràng hơn để thực hiện ?
Bạn nghĩ gì cho phép bạn viết những thứ như 'return (int) money.Amount;' trong mã của bạn? – mbeckish
Thats một mẫu được tìm thấy trên một bộ đào tạo Microsfot, (thi Ref 70-483 Lập trình trong C#, Wouter de Kort, O´Reilly, 2013 (Trang 2 CH 2ƠNG 2 Tạo và sử dụng các loại)) –
@WilnerAvila - Khi bạn đến 20 danh tiếng, bạn luôn có thể hỏi những loại câu hỏi "Tôi không hiểu" trong [C# phòng chat] (http://chat.stackoverflow.com/rooms/7/c). Đó là một định dạng tốt hơn để giải thích nhanh hơn SO. –