কম্পিউটার টিউটোরিয়াল

C#-এ বক্সিং (Boxing) কী?


বক্সিং ভ্যালু টাইপকে অবজেক্ট টাইপে রূপান্তর করে। বক্সিংর একটি উদাহরণ দেখি −

int x = 50; object ob = x; // boxing

বক্সিং-এ, স্ট্যাকে সংরক্ষিত ভ্যালু হিপ মেমরিতে সংরক্ষিত অবজেক্টে কপি হয়, অন্য দিকে আনবক্সিং (unboxing) এর বিপরীত।

বক্সিং ভ্যালু টাইপগুলো গারবেজ-কলেক্টেড হিপে সংরক্ষণ করতে উপকারী। এটি ভ্যালু টাইপ থেকে object টাইপে ইমপ্লিসিট কনভার্সন।

নিচে একটি উদাহরণ দেখি −

উদাহরণ

using System; using System.Collections.Generic; using System.Linq; public class Demo {    static void Main() {       int x = 50;       object ob = x;       x = 100;       // x-এ পরিবর্তন ob-এর ভ্যালুকে প্রভাবিত করবে না       System.Console.WriteLine("Value Type = {0}", x);       System.Console.WriteLine("Oject Type = {0}",ob);    } }

তবে, আনবক্সিং-এ, অবজেক্টের ভ্যালু হিপ মেমরিতে থেকে কপি হয়ে স্ট্যাকে সংরক্ষিত ভ্যালু টাইপে যায়। এর এক্সপ্লিসিট কনভার্সন থাকে যেখানে বক্সিং-এ ইমপ্লিসিট।


  1. C/C++-এ টাইপ কাস্টিং (Type Casting) কী?

  2. C#-এ ইন্টিজারের সর্বোচ্চ সম্ভাব্য মান কত?

  3. C#-এ টাইপ কাস্টিং (Type Casting) কী?

  4. C#-এ ডেটা টাইপ, ভ্যালু টাইপ এবং রেফারেন্স টাইপ কী?