Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Aggiornamento: novembre 2007
Operands of type Object used in expressions for 'Select', 'Case' statements; runtime errors could occur
Una costruzione Select...Case utilizza una o più espressioni delTipo di dati Object.
Quando una variabile o un'espressione restituisce Object, il compilatore deve eseguire un'associazione tardiva che comporta l'esecuzione di ulteriori operazioni in fase di esecuzione ed espone l'applicazione a possibili errori di runtime. Se ad esempio si assegna Form a una variabile Object e quindi si prova a confrontarla con un numero, viene generata un'eccezione InvalidCastException perché Visual Basic non supporta la conversione di un oggetto Form in un valore numerico.
Le espressioni contenute in una costruzione Select...Case devono presentare tutte lo stesso tipo di dati oppure tipi di dati strettamente correlati e convertibili tra di loro. Questo perchè almeno un valore di ogni istruzione Case viene confrontato con l'espressione di test sulla quale si basa la costruzione Select...Case.
Per impostazione predefinita, si tratta di un messaggio di avviso. Per informazioni su come nascondere gli avvisi o considerarli come errori, vedere Configurazione degli avvisi in Visual Basic.
ID errore: BC42036
Per correggere l'errore
- Se possibile, organizzare tutte le espressioni in modo che restituiscano i tipi di dati per i quali sono stati definiti gli operatori di confronto.
Vedere anche
Concetti
Operatori aritmetici in Visual Basic
Operatori di confronto in Visual Basic