Condividi tramite


Procedura: chiamare una routine con operatore

Aggiornamento: novembre 2007

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 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.

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

Procedura: definire un operatore di conversione

Procedura: dichiarare una struttura

Concetti

Routine di operatore

Conversioni implicite ed esplicite

Conversioni di ampliamento e restrizione

Riferimenti

Istruzione Operator

Conversione verso un tipo di dati più grande

Conversione verso un tipo di dati più piccolo

Istruzione Structure