Una cosa che non ottengo con la direttiva using
di C # è il motivo per cui posso solo "usa" uno spazio dei nomi a livello di file e non all'interno di un ambito di blocco arbitrario.
( using namespace x;
di C ++ consente questo e certamente i progettisti C # a conoscenza di questo.)
Se ho, ad esempio, una sola funzione nella mia classe che fa qualcosa con I / O di file, mi sembra che abbia senso scrivere solo:
void MunchFile(string name) {
using System.IO; // not allowed
...
}
ma invece devo scrivere:
// somewhere at the top of the file:
using System.IO;
... 2 pages down ...
void MunchFile(string name) {
...
}
È un'irritazione ogni volta che lo incontro e continuo a grattarmi la testa perché questo non è stato permesso / implementato.
- Ci sono delle affermazioni da parte dei designer C #. questo?
- C'è qualche problema di progettazione del linguaggio concettuale. questo?