কম্পিউটার

C# এ মানের প্রকার এবং রেফারেন্স প্রকারগুলি ব্যাখ্যা করুন এবং বৈসাদৃশ্য করুন


সাধারণভাবে, C#-এর সকল প্রকারকে দুটি প্রধান শ্রেণীতে ভাগ করা যায় - মান প্রকার এবং রেফারেন্স প্রকার . আসুন প্রতিটি প্রকার বিস্তারিতভাবে দেখি।

মূল্যের ধরন

মান প্রকারের ভেরিয়েবল সরাসরি তাদের ডেটা ধারণ করে। প্রতিটি ভেরিয়েবলের ডেটার নিজস্ব কপি রয়েছে। তাই ভ্যালু টাইপের ভেরিয়েবলের পক্ষে অন্য অবজেক্ট পরিবর্তন করা অসম্ভব।

একটি মান প্রকার নিম্নলিখিত প্রকারগুলির মধ্যে একটি হতে পারে -

  • সমস্ত সাংখ্যিক প্রকার, যেমন, int, float, এবং ডবল
  • চর এবং বুল প্রকারগুলি
  • গঠন টাইপ করুন বা
  • গণনা প্রকার।

একটি মান টাইপ সহজ মান ধারণ করে. উদাহরণ স্বরূপ, পূর্ণসংখ্যার ধরণে প্রকৃত সংখ্যা থাকে, রেফারেন্স প্রকারের মতো সংখ্যার নির্দেশক নয়।

একটি কাস্টম মান টাইপ তৈরি করতে, আপনি একটি struct ব্যবহার করতে পারেন। যেমন −

public struct Point
{
public int X;
public int Y;
}
var p1 = new Point();

মেমরিতে, একটি পয়েন্টের একটি উদাহরণ নিম্নরূপ উপস্থাপন করা হয় -

C# এ মানের প্রকার এবং রেফারেন্স প্রকারগুলি ব্যাখ্যা করুন এবং বৈসাদৃশ্য করুন

আপনি যখন অন্য একটি ভেরিয়েবলের মান প্রকারের একটি ভেরিয়েবল বরাদ্দ করেন, তখন অ্যাসাইনমেন্ট অপারেশনটি বরাদ্দ করা মানটির একটি অনুলিপি তৈরি করে। উদাহরণস্বরূপ,

Point p2 = p1;

C# এ মানের প্রকার এবং রেফারেন্স প্রকারগুলি ব্যাখ্যা করুন এবং বৈসাদৃশ্য করুন

রেফারেন্স টাইপস

রেফারেন্স প্রকারের ভেরিয়েবল তাদের বস্তুর একটি রেফারেন্স সংরক্ষণ করে। দুটি ভিন্ন ভেরিয়েবলের জন্য একই বস্তুর একটি রেফারেন্স রাখা সম্ভব। একটি ভেরিয়েবল অবজেক্টে যে কোনো পরিবর্তন করলে তা দ্বিতীয় ভেরিয়েবলের কাছে দৃশ্যমান হয়।

একটি রেফারেন্স টাইপ নিম্নলিখিত প্রকারগুলি নিয়ে গঠিত -

  • স্ট্রিং
  • শ্রেণী
  • অ্যারে
  • প্রতিনিধি
  • ইন্টারফেস

উদাহরণস্বরূপ, আপনি একটি ক্লাস তৈরি করতে পারেন, যা নিম্নরূপ একটি রেফারেন্স টাইপ -

public class Point{
   public int X;
   public int Y;
}
var p1 = new Point();

C# এ মানের প্রকার এবং রেফারেন্স প্রকারগুলি ব্যাখ্যা করুন এবং বৈসাদৃশ্য করুন

আপনি যখন রেফারেন্স টাইপের একটি ভেরিয়েবল অন্য ভেরিয়েবলে অ্যাসাইন করেন, অ্যাসাইনমেন্ট অপারেশনটি কেবল রেফারেন্সটি কপি করে, আসল অবজেক্ট নয়৷

Point p2 = p1;

C# এ মানের প্রকার এবং রেফারেন্স প্রকারগুলি ব্যাখ্যা করুন এবং বৈসাদৃশ্য করুন

উদাহরণ

using System;
class Program{
   static void Main(){
      var p1 = new Point { X = 10 };
      Point p2 = p1;
      p2.X = 20;
      Console.WriteLine("Value Type");
      Console.WriteLine(p1.X);
      Console.WriteLine(p2.X);
      var u1 = new User { Age = 10 };
      User u2 = u1;
      u2.Age = 20;
      Console.WriteLine("Reference Type");

      Console.WriteLine(u1.Age);
      Console.WriteLine(u2.Age);
   }
}
public struct Point{
   public int X;

   public int Y;
}
public class User{
   public int Age { get; set; }
}

আউটপুট

Value Type
10
20
Reference Type
20
20

  1. জাভাস্ক্রিপ্টে রেফারেন্স দ্বারা মূল্য এবং পাস দ্বারা পাস বর্ণনা?

  2. MongoDB:কী হিসাবে রেফারেন্স ব্যবহার করছেন এবং ম্যানুয়ালি একটি মান যোগ করছেন?

  3. সি প্রোগ্রামিং এর রেফারেন্স ও পয়েন্টার ব্যাখ্যা কর?

  4. একটি উদাহরণ সহ C-তে উদ্বায়ী এবং সীমাবদ্ধ টাইপ কোয়ালিফায়ার ব্যাখ্যা করুন