রেফ প্যারামিটার
একটি রেফারেন্স প্যারামিটার হল একটি পরিবর্তনশীলের মেমরি অবস্থানের একটি রেফারেন্স। যখন আপনি রেফারেন্স দ্বারা প্যারামিটারগুলি পাস করেন, মান প্যারামিটারের বিপরীতে, এই প্যারামিটারগুলির জন্য একটি নতুন স্টোরেজ অবস্থান তৈরি করা হয় না৷
আপনি রেফ কীওয়ার্ড ব্যবহার করে রেফারেন্স প্যারামিটার ঘোষণা করতে পারেন। নিম্নলিখিত একটি উদাহরণ -
উদাহরণ
using System; namespace CalculatorApplication { class NumberManipulator { public void swap(ref int x, ref int y) { int temp; temp = x; /* save the value of x */ x = y; /* put y into x */ y = temp; /* put temp into y */ } static void Main(string[] args) { NumberManipulator n = new NumberManipulator(); /* local variable definition */ int a = 100; int b = 200; Console.WriteLine("Before swap, value of a : {0}", a); Console.WriteLine("Before swap, value of b : {0}", b); /* calling a function to swap the values */ n.swap(ref a, ref b); Console.WriteLine("After swap, value of a : {0}", a); Console.WriteLine("After swap, value of b : {0}", b); Console.ReadLine(); } } }
আউটপুট
Before swap, value of a : 100 Before swap, value of b : 200 After swap, value of a : 200 After swap, value of b : 100
আউট প্যারামিটার
একটি রিটার্ন স্টেটমেন্ট একটি ফাংশন থেকে শুধুমাত্র একটি মান ফেরত দেওয়ার জন্য ব্যবহার করা যেতে পারে। যাইহোক, প্যারামিটার ব্যবহার করে, আপনি একটি ফাংশন থেকে দুটি মান ফেরত দিতে পারেন।
নিম্নলিখিত একটি উদাহরণ -
উদাহরণ
using System; namespace CalculatorApplication { class NumberManipulator { public void getValue(out int x ) { int temp = 10; x = temp; } static void Main(string[] args) { NumberManipulator n = new NumberManipulator(); /* local variable definition */ int a = 150; Console.WriteLine("Before method call, value of a : {0}", a); /* calling a function to get the value */ n.getValue(out a); Console.WriteLine("After method call, value of a : {0}", a); Console.ReadLine(); } } }
আউটপুট
Before method call, value of a : 150 After method call, value of a : 10