Qual è l'utilizzo di questi operatori?Quando è necessario utilizzare gli operatori impliciti ed espliciti in C#?
5
A
risposta
10
In pratica quando si desidera fornire conversioni tra tipi. LINQ to XML fornisce un buon esempio ... C'è un implicito conversione da stringa a XName, in modo da poter scrivere:
XName name = "element";
ma c'è un esplicito conversione da XAttribute
a int
(e molti altri tipi) così è necessario includere un cast nel codice:
int value = (int) element.Attribute("age");
pensare molto attentamente prima di fornire le conversioni implicite - sono raramente una buona idea; LINQ to XML li usa con grande efficacia, ma possono essere fonte di confusione. Anche le conversioni esplicite definite dall'utente possono sorprendere il lettore incauto.
3
Vengono utilizzati quando si esegue operator overloading. Ecco un link a MSDN article.
Quasi tutte le volte evito di utilizzarle come progettista di biblioteche (a meno che non sia sicuro che non vengano utilizzate in modo scorretto e proteste). –