Procedura: chiamare una routine di operatore (Visual Basic)

Per chiamare una routine di operatore, usare il simbolo dell'operatore in un'espressione. Nel caso di un operatore di conversione viene chiamata la funzione CType per convertire un valore da un tipo di dati a un altro.

Le routine di operatore non vengono chiamate in modo esplicito. È sufficiente usare l'operatore o la funzione CType, in un'istruzione di assegnazione o in un'espressione, allo stesso modo in cui si usa normalmente un operatore. Visual Basic effettua la chiamata alla routine di operatore.

La definizione di un operatore in una classe o struttura è anche chiamata overload dell'operatore.

Per chiamare una routine di operatore

  1. Usare il simbolo dell'operatore in un'espressione come al solito.

  2. Assicurarsi che i tipi di dati degli operandi siano appropriati per l'operatore e definiti nell'ordine corretto.

  3. L'operatore contribuisce al valore dell'espressione come previsto.

Per chiamare una routine di operatore di conversione

  1. Usare CType all'interno di un'espressione.

  2. Assicurarsi che i tipi di dati degli operandi siano appropriati per la conversione e definiti nell'ordine corretto.

  3. CType chiama la routine di operatore di conversione e restituisce il valore convertito.

Esempio

L'esempio seguente crea due strutture TimeSpan, le somma e archivia il risultato in una terza struttura TimeSpan. La struttura TimeSpan definisce le routine di operatore per eseguire l'overload di diversi operatori standard.

Dim firstSpan As New TimeSpan(3, 30, 0)
Dim secondSpan As New TimeSpan(1, 30, 30)
Dim combinedSpan As TimeSpan = firstSpan + secondSpan
Dim s As String = firstSpan.ToString() & 
          " + " & secondSpan.ToString() & 
          " = " & combinedSpan.ToString()
MsgBox(s)

Poiché TimeSpan esegue l'overload dell'operatore + standard, nell'esempio precedente viene chiamata una routine di operatore quando viene calcolato il valore di combinedSpan.

Per un esempio di chiamata di una routine di operatore di conversazione, vedere Procedura: Usare una classe che definisce gli operatori.

Compilare il codice

Assicurarsi che la classe o la struttura in uso definisca l'operatore da usare.

Vedi anche