Overloading: differenze tra le versioni

Nessun cambiamento nella dimensione ,  16 anni fa
m
nessun oggetto della modifica
(→‎Overloading degli operatori: tolto il C (non ha l'overloading degli operatori))
mNessun oggetto della modifica
In Programmazioneorogrammazione, si dice '''Overloadingoverloading''' una famiglia di [[funzione|fuzioni]]/[[subroutine]] avente lo stesso nome, ma con la possibilità di accettare un diverso set di argomenti ([[signature]]), ed eventualmente restituire un diverso [[valore di ritorno]]. Tale famiglia di funzioni è detta ''in rapporto di Overloading'', o ''sovraccaricata''.
 
A seconda dei casi, si può parlare di overloading di funzioni, di [[costruttore|costruttori]] e di [[operatore|operatori]].
In linguaggio [[Visual Basic]] è possibile simulare il sovraccarico degli operatori implementando l'interfaccia IComparable.
 
==Note sull'Overloadingoverloading==
Un errore comune di molti programmatori è quello di voler creare due funzioni che accettano gli stessi tipi di parametri in ingresso e restituiscono un tipo differente. Ciò non è possibile perchè l'esecutore identifica le [[funzione|funzioni]]/[[subroutine]], a livello [[assembly]], mediante delle etichette ([[label]]). Tali label rispecchiano la [[signature]] della funzione stessa, e pertanto due label uguali non possono coesistere all'interno di uno stesso spazio di visibilità. ÉÈ comunque possibile definire due o più funzioni dalla stessa signature all'interno di [[namespace|spazi di nomi]] diversi senza ottenere errori di compilazione.
 
L'Overloadingoverloading, infine, non influisce sulla corretta esecuzione delle procedure [[Algoritmo ricorsivo|ricorsive]].
 
[[Categoria: Linguaggi di programmazione]]
14 421

contributi