Junior
Cos'è la portata (scoped) in C#?
sobes.tech AI
Risposta dell'AI
L'ambito in C# determina la disponibilità di variabili, metodi e tipi in una parte specifica del programma. È una restrizione su dove nel codice può essere utilizzato un determinato identificatore.
Principali aree di ambito:
- Blocco di codice: Le variabili dichiarate all'interno delle parentesi
{ }sono disponibili solo all'interno di questo blocco. - Ambito del metodo: Le variabili e i parametri dichiarati all'interno di un metodo sono disponibili solo all'interno di quel metodo.
- Ambito della classe/struttura: I membri di una classe o struttura (campi, proprietà, metodi) sono accessibili in base ai modificatori di accesso (public, private, protected, internal).
- Ambito dello spazio dei nomi: I tipi dichiarati nello spazio dei nomi sono accessibili in questo spazio e in altri spazi dei nomi dove si utilizza
using. - Ambito dell'assembly: I tipi con il modificatore
internalsono accessibili solo all'interno dell'assembly corrente.
Esempio di ambito di blocco di codice:
public void ExampleMethod()
{
int x = 10; // x è disponibile solo all'interno di ExampleMethod
if (x > 5)
{
int y = 20; // y è disponibile solo all'interno del blocco if
Console.WriteLine(y);
}
// Console.WriteLine(y); // Errore di compilazione: y non è disponibile qui
}