Condividi tramite


Procedura: chiamare una routine di operatore (Visual Basic)

Per chiamare una routine con operatore, è possibile utilizzare il simbolo dell'operatore in un'espressione. Nel caso di un operatore di conversione, è necessario chiamare la Funzione CType (Visual Basic) che consente di convertire un valore da un tipo di dati a un altro.

Non è possibile chiamare le routine con operatore in modo esplicito. È sufficiente utilizzare l'operatore o la funzione CType in un'espressione o un'istruzione di assegnazione, allo stesso modo in cui si utilizza normalmente un operatore. La chiamata alla routine di operatore viene effettuata da Visual Basic.

La definizione di un operatore su una classe o una struttura viene anche detta overload dell'operatore.

Per chiamare una routine con operatore

  1. Utilizzare normalmente il simbolo dell'operatore in un'espressione.

  2. Accertarsi che i tipi di dati degli operandi siano appropriati per l'operatore e si trovino nell'ordine corretto.

  3. L'operatore contribuirà al valore dell'espressione come previsto.

Per chiamare una routine con operatore di conversione

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

  2. Accertarsi che i tipi di dati degli operandi siano appropriati per la conversione e si trovino nell'ordine corretto.

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

Esempio

Nell'esempio riportato di seguito vengono create due strutture TimeSpan che vengono aggiunte insieme e i relativi risultati vengono memorizzati in una terza struttura TimeSpan. La struttura TimeSpan definisce le routine con 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)

Dal momento che TimeSpan esegue l'overload dell'operatore standard +, nell'esempio precedente viene richiamata una routine di operatore quando si calcola il valore di combinedSpan.

Per un esempio di chiamata a una routine con operatore di conversione, vedere Procedura: utilizzare una classe che definisce gli operatori (Visual Basic).

Compilazione del codice

Accertarsi che la classe o la struttura attiva definisca l'operatore che si desidera utilizzare.

Vedere anche

Attività

Procedura: definire un operatore (Visual Basic)

Procedura: definire un operatore di conversione (Visual Basic)

Procedura: dichiarare una struttura (Visual Basic)

Riferimenti

Istruzione Operator

Widening (Visual Basic)

Narrowing (Visual Basic)

Istruzione Structure

Concetti

Routine di operatore (Visual Basic)

Conversioni implicite ed esplicite (Visual Basic)

Conversioni di ampliamento e restrizione (Visual Basic)