Sobes.tech
Junior

Šta je opseg (scoped) u C#?

sobes.tech АИ

Одговор од АИ

Област видљивости у C# одређује доступност променљивих, метода и типова у одређеном делу програма. Ово је ограничење где у коду може бити коришћен одређени идентификатор.

Главне области видљивости:

  • Блок кода: Променљиве које су декларативно унутар заграда { } доступне су само унутар тог блока.
  • Област метода: Променљиве и параметри који су декларативно унутар методе доступни су само унутар те методе.
  • Област класе/структуре: Чланови класе или структуре (поља, својства, методи) су доступни у зависности од модификатора приступа (public, private, protected, internal).
  • Област простора имена: Типови који су декларативно унутар простора имена доступни су у том простору и у другим просторима где је коришћен using.
  • Област састава: Типови са модификатором internal су доступни само унутар тренутног састава.

Пример области кода:

public void ExampleMethod()
{
    int x = 10; // x је доступна само унутар ExampleMethod
    if (x > 5)
    {
        int y = 20; // y је доступна само унутар блока if
        Console.WriteLine(y);
    }
    // Console.WriteLine(y); // Грешка при компилацији: y није доступна овде
}