Şub
5
2016

C# Boxing and Unboxing Nedir ?

C# Boxing and Unboxing

Net Framework’te value type ve referance type olmak üzere iki tür veri tipi vardır.

Value Type : İnteger, Float ,Decimal , Struct, vb.                                              Stack   bölgesinde tutulurlar.

Referans Türler : Dynamic, Delegate, Interface, Strings, Object, Class.      Hesap  bölgesinde tutulurlar.

Boxing , Stack’te bulunan değer türlerinin heap bulunan referans tiplerine dönüştürmektir.

Boxing :

int x = 5;
object o = a;

Unboxing, boxing işleminin tersini yapar.Yani heap bulunanların stack bölgesine kopyalanması işlemidir.

Unboxing:

int x = 5;
object o = x;
int y = (int)o;

Zorunlu olmadıkça kullanmaktan kaçınılmalıdır.
Çünkü programın normal atamada kaybedeceği sürenin kat kat fazlasını kaybeder ve programın performansını önemli derecede düşürür.

ToString() metoduda boxing işlemini yapan bir metotdur.

Yazar Hakkında

Harun Balta 63 adet yazısı bulunuyor..

Bilgisayar Mühendisliği Üzerine çalıştığım konular: C# , .Net , Silverlight , WPF , Entity Framework ,MVVM, Oracle ,Pl/Sql

Print Friendly