L'espressione chiama in modo ricorsivo l'operatore '<simboloperatore>' che la contiene

Aggiornamento: novembre 2007

Expression recursively calls containing Operator '<operatorsymbol>'

Un'espressione all'interno di una routine con operatore utilizza l'operatore da definire, il che fa sì che la routine con operatore chiami se stessa per effetto dei tipi di dati utilizzati.

La routine con operatore che si sta definendo chiama se stessa se utilizza lo stesso operatore con uno degli operandi specificato di seguito:

  • Gli stessi operandi per i quali si sta definendo l'operatore,

  • Gli operandi degli stessi tipi di dati per i quali si sta definendo l'operatore oppure

  • Gli operandi di tipi di dati che vengono ampliati ai tipi di dati per i quali si sta definendo l'operatore.

Una chiamata ricorsiva avviene quando una procedura chiama se stessa. Le chiamate ricorsive possono generare un ciclo infinito nel quale il controllo passa ripetutamente attraverso lo stesso gruppo di istruzioni fino a quando l'applicazione non viene terminata esternamente. Se il codice non include uno o più test utilizzabili per terminare la ricorsione, si rischia di generare un ciclo infinito.

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: BC42004

Per correggere l'errore

  • Se la logica richiede che la routine con operatore chiami se stessa, accertarsi di eseguire il test per almeno una condizione che avverrà con certezza in un determinato momento e utilizzare questo test per terminare le chiamate ricorsive.

  • Se la logica non necessita che la routine con operatore chiami se stessa, rimuovere le eventuali chiamate ricorsive o sostituirle con le istruzioni che non chiamano la loro stessa procedura.

Vedere anche

Attività

Procedura: definire un operatore

Procedura: definire un operatore di conversione

Concetti

Routine di operatore

Riferimenti

Istruzione Operator