La direttiva using
ci dà accesso ai tipi senza utilizzare i loro nomi completi :
using MyNamespace.Foo.Bar;
L' istruzione using
funge da zucchero sintattico per try
/ finally
blocchi che assicurano che gli oggetti siano smaltiti correttamente:
using(var x = new MyDisposableClass()) { ... }
Queste due situazioni sembrano non avere nulla a che fare l'una con l'altra. Perché usano la stessa parola chiave?
Dubito che qualcuno possa mai confondere i due casi, ma sembra strano non creare una nuova parola per una nuova funzionalità.
Per inciso, ho letto anche il doppio uso di class
in C ++ (uno per la dichiarazione delle classi, uno per la definizione dei parametri del modello), ma il secondo caso ha ottenuto la propria parola chiave, typename
, che ha più senso per me.