C# Dilindeki Temel Veri Türleri
Değişkenlerin Faaliyet Alanı
C# dilinde programlar açılır ve kapanan parantezler içerisinde yazıldığını ilk yazı dizimizde belirtmiştik.Bu parantezler arasında kalan bölgeye blok denir. Tanımlanan değişkene ancak tanımlandığı blok içerisinde erişilebilir.Bu blok aralığına değişken faaliyet alanı denir. Faaliyet alanları aşağıdaki kriterlere göre belirlenir:
Bir sınıfın üye elemanı olarak tanımlanmış değişken her zaman sınıfın faaliyet alanı içindedir.
Yerel bir değişken, tanımlandığı blok arasında kaldığı sürece faaliyet alanındadır. Bu konu hakkında ileride daha detaylı bir bilgi vereceğiz.
For,while ve do-while döngü blokları arsındaki değişkenler döngü bloğu dışına çıkıldığında çalışmamaktadır.
Aşağıdaki örnekteki "a" değişkenleri bir birinde bağımsız bellekte farklı alanlarda saklanır.
Örnek Uygulama:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication4
{
class Program
{
static void Main(string[] args)
{
{
int a = 20; //Birinci Blok
}
{
int a = 20; // İkinci Blok
}
}
}
}
Not : Programda gördüğünüz public sözcüğü ileride anlatılacaktır. Programı derlediğinizde uyarı verecektir. Uyarının sebebi faaliyet alanı değildir. Tanımlamış olduğunuz değişkenlerin program da her hangi bir yerde kullanılıyor olmamasıdır.
Yukarıdaki programda gözümüze çarpan bir noktada "//" karakteri ile başlayan satırlardır. Bu karakterle başlayan satırlar yorum satırlarıdır. Bu satırlara o nokta ile ilgili yorumlarınızı ekleye bilirsiniz.Yorum satırının bir diğer kullanımı da /* ile */ kalan bölgeye isteğimiz sayıda yorum satırı ekleyebiliriz.
Faaliyet alanı ile ilgili diğer önemli nokta ise faaliyet alanı devam eden bir değişken bir daha tanımlanmasının hataya yol açmasıdır. Aşağıdaki programdaki gibi bir durum derleme zamanında hata verecektir.Çünkü bir değişkenin faaliyet alanı bitmeden aynı isimli değişken tekrar tanımlanıyor.
Örnek Uygulama:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication4
{
class Program
{
static void Main(string[] args)
{
int a;
{
int a = 20;
}
}
}
}
Main bloğunda tanımlanan "a" değişkeni alt blokta kullanıldığından hataya sebep olur. Üst seviyede bulunan blok alt seviyedeki blokları da kapsar.
Yukarıda anlatılan duruma ters düşüyor gibi görünse de aşağıdaki gibi bir kullanım mevcuttur. Bu kullanımla ilgili önemli noktalar ilerleyen yazılarda anlatılacaktır. Şimdilik sadece böyle bir kullanımın mevcut olduğunu da bilmenizdir.
Örnek Uygulama:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication4
{
class Program
{
static int a = 10;
static void Main(string[] args)
{
{
int a = 5;
Console.WriteLine(a);
}
}
}
}
Yukarıdaki uygulamayı derlediğinizde ekrana 5 yazdığını göreceksiniz.
Paylaşımlarınızı sık sık takip etmekteyim . İstanbul ucak biletleri olarak paylaşımlarınızın devamını bekleriz .
YanıtlaSilYayınlarımız devam edecektir. En kısa zamanda yeni paylaşımlarla karşınızda olacağız.
Sil