Istruzioni per l'esecuzione del cast dei tipi

Le istruzioni per l'uso dei cast sono definite dalle regole riportate di seguito.

  • Non consentire cast impliciti che determineranno una minore precisione. Sebbene, ad esempio, sia opportuno che non esista un cast implicito da Double a Int32, è possibile che esista un cast da Int32 a Int64.
  • Non generare eccezioni dai cast impliciti in quanto è molto difficile per lo sviluppatore interpretare le operazioni in corso.
  • Fornire cast che funzionano su un intero oggetto. Il valore di cui viene eseguito il cast deve rappresentare l'intero oggetto, non un membro di un oggetto. Non è appropriato, ad esempio, per un Button eseguire il cast di una stringa restituendo la relativa didascalia.
  • Non generare un valore diverso dal punto di vista semantico. È ad esempio corretto convertire un tipo DateTime o TimeSpan in un tipo Int32. Int32 rappresenta ancora il tempo o la durata. Non è opportuno, tuttavia, convertire la stringa di un nome file, ad esempio "c:\mybitmap.gif" in un oggetto Bitmap.
  • Non eseguire il cast dei valori da domini differenti. I cast funzionano all'interno di un particolare dominio di valori. I numeri e le stringhe, ad esempio, sono domini diversi. È opportuno che un Int32 possa eseguire il cast di un elemento Double. Non è opportuno, tuttavia, che un Int32 esegua il cast di un elemento String, in quanto si trovano in domini diversi.

Vedere anche

Istruzioni di progettazione per gli sviluppatori di librerie di classi