Junior
Ի՞նչ է տեսադաշտը (scoped) C#-ում։
sobes.tech AI
Պատասխան AI-ից
C#-ում տեսանելիության դաշտը որոշում է փոփոխականների, մեթոդների և տիպերի հասանելիությունը ծրագրի որոշ մասում: Դա սահմանափակում է այն վայրերը, որտեղ կոդում կարող է օգտագործվել որոշակի նույնականիչ:
Հիմնական տեսանելիության դաշտերը՝
- Կոդի բլոկ (Block Scope):
{ }փակագծերի ներսում հայտարարված փոփոխականները հասանելի են միայն այդ բլոկի ներսում: - Մեթոդի դաշտ (Method Scope): Մեթոդի ներսում հայտարարված փոփոխականներն ու պարամետրերը հասանելի են միայն այդ մեթոդի ներսում:
- Սինֆ/ստրուկտուրայի դաշտ (Class/Struct Scope): Սինֆ կամ ստրուկտուրայի անդամները (գոտիներ, հատկություններ, մեթոդներ) հասանելի են՝ կախված մոդիֆիկատորներից (public, private, protected, internal):
- Անվանումների տարածք (Namespace Scope): Անվանումների տարածքում հայտարարված տիպերը հասանելի են այդ տարածքում և այլ տարածքներում, որտեղ օգտագործվում է
using: - Ամսբլեայի դաշտ (Assembly Scope):
internalմոդիֆիկատորով տիպերը հասանելի են միայն ընթացիկ ամսբլեայում:
Օրինակ՝ կոդի բլոկի տեսանելիության դաշտի օրինակ՝
public void ExampleMethod()
{
int x = 10; // x հասանելի է միայն ExampleMethod-ի ներսում
if (x > 5)
{
int y = 20; // y հասանելի է միայն if բլոկի ներսում
Console.WriteLine(y);
}
// Console.WriteLine(y); // սխալ՝ y հասանելի չէ այստեղ
}