কম্পিউটার

কিভাবে C++ এ রেফারেন্স প্যারামিটার ব্যবহার করবেন?


এখানে আমরা দেখব কিভাবে C++ এ কিছু ভেরিয়েবলের রেফারেন্স পাস করা যায়। কখনও কখনও আমরা এটিকে "কল বাই রেফারেন্স" হিসাবে বলি৷

একটি ফাংশনে আর্গুমেন্ট পাস করার রেফারেন্স পদ্ধতি দ্বারা কল আনুষ্ঠানিক প্যারামিটারে একটি আর্গুমেন্টের রেফারেন্স কপি করে। ফাংশনের ভিতরে, কলে ব্যবহৃত প্রকৃত আর্গুমেন্ট অ্যাক্সেস করতে রেফারেন্স ব্যবহার করা হয়। এর মানে হল প্যারামিটারে করা পরিবর্তনগুলি পাস করা আর্গুমেন্টকে প্রভাবিত করে৷

রেফারেন্স দ্বারা মান পাস করার জন্য, আর্গুমেন্ট রেফারেন্স অন্যান্য মানের মতই ফাংশনে পাস করা হয়। সুতরাং সেই অনুযায়ী আপনাকে নিম্নলিখিত ফাংশন swap() এর মতো রেফারেন্স প্রকার হিসাবে ফাংশন প্যারামিটার ঘোষণা করতে হবে, যা এর আর্গুমেন্ট দ্বারা নির্দেশিত দুটি পূর্ণসংখ্যা ভেরিয়েবলের মান বিনিময় করে।

উদাহরণ

মান অদলবদল করার জন্য
// function definition to swap the values.
void swap(int &x, int &y) {
   int temp;
   temp = x; /* save the value at address x */
   x = y; /* put y into x */
   y = temp; /* put x into y */
   return;
}

আপাতত, নিচের উদাহরণের মত রেফারেন্স দ্বারা মান পাস করে ফাংশন swap() কল করি -

উদাহরণ

#include <iostream>
using namespace std;
// function declaration
void swap(int &x, int &y);
int main () {
   // local variable declaration:
   int a = 100;
   int b = 200;
   cout << "Before swap, value of a :" << a << endl;
   cout << "Before swap, value of b :" << b << endl;
   /* calling a function to swap the values using variable reference.*/
   swap(a, b);
   cout << "After swap, value of a :" << a << endl;
   cout << "After swap, value of b :" << b << endl;
   return 0;
}

আউটপুট

Before swap, value of a :100
Before swap, value of b :200
After swap, value of a :200
After swap, value of b :100

  1. কিভাবে আমরা একটি C# পদ্ধতিতে রেফারেন্স দ্বারা পরামিতি পাস করব?

  2. C# এ মানের প্যারামিটার বনাম রেফারেন্স প্যারামিটার বনাম আউটপুট প্যারামিটার

  3. কিভাবে C# এ একটি পদ্ধতিতে পরামিতি পাস করবেন?

  4. কিভাবে C# এ একটি ভেরিয়েবলের একটি রেফারেন্স বরাদ্দ করবেন