ho avuto uno sguardo al Path.Combine
e ho notato che ha quattro overload:diversi overload per il metodo con "params" parola chiave
string
,string
string
,string
,string
string
,string
,string
,string
params string[]
Come sono utili i primi tre sovraccarichi?
Per come la vedo io, il quarto sovraccarico rende gli altri piuttosto inutili. Ho guardato la fonte e ho visto che l'implementazione del quarto sovraccarico è un po 'diversa, ma anche in questo caso mi aspetterei di avere solo il sovraccarico params
che decide quale implementazione utilizzare in base alla lunghezza dell'array.
Bene, 'Combine (String, String)' esiste per compatibilità con le versioni precedenti (le versioni precedenti alle 4 non avevano altri sovraccarichi). – Oded
Da quello che ho capito, gli overloads non params ti permettono di saltare l'overhead della creazione dell'array di parametri e dell'iteratore dell'argomento. Non ricordo dove l'ho letto, quindi sto commentando piuttosto che rispondere. – phoog
@phoog: questo ha senso. La maggior parte degli usi dovrà combinare fino a 4 sezioni di percorso. – Oded