Junior
Čo je to rozsah (scoped) v C#?
sobes.tech AI
Odpoveď od AI
Rozsah v jazyku C# určuje dostupnosť premenných, metód a typov v určitej časti programu. Ide o obmedzenie toho, kde v kóde je možné použiť určitý identifikátor.
Hlavné oblasti rozsahu:
- Blok kódu: Premenné deklarované vnútri zátvoriek
{ }sú dostupné iba v tomto bloku. - Rozsah metódy: Premenné a parametre deklarované vnútri metódy sú dostupné iba v tejto metóde.
- Rozsah triedy/štruktúry: Členovia triedy alebo štruktúry (polia, vlastnosti, metódy) sú dostupné v závislosti od modifikátorov prístupu (public, private, protected, internal).
- Rozsah priestoru názvov: Typy deklarované v priestore názvov sú dostupné v tomto priestore a v iných priestoroch názvov, kde je použitý
using. - Rozsah zostavy: Typy s modifikátorom
internalsú dostupné iba v rámci aktuálnej zostavy.
Príklad rozsahu bloku kódu:
public void ExampleMethod()
{
int x = 10; // x je dostupná iba vnútri metódy ExampleMethod
if (x > 5)
{
int y = 20; // y je dostupná iba vnútri bloku if
Console.WriteLine(y);
}
// Console.WriteLine(y); // Chyba kompilácie: y nie je dostupná tu
}