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

সি/সি++-এ রেফারেন্স বনাম পয়েন্টার কখন ব্যবহার করবেন


রেফারেন্স ভেরিয়েবল

রেফারেন্স ভেরিয়েবল হলো ইতিমধ্যে বিদ্যমান একটি ভেরিয়েবলের বিকল্প নাম। এটি অন্য ভেরিয়েবল রেফার করার জন্য পরিবর্তন করা যায় না এবং ঘোষণার সময়ই ইনিশিয়ালাইজ করতে হয়। এটি NULL হতে পারে না। রেফারেন্স ভেরিয়েবল ঘোষণা করার জন্য & অপারেটর ব্যবহার করা হয়।

রেফারেন্স ভেরিয়েবলের সিনট্যাক্স:

datatype variable_name; // ভেরিয়েবল ঘোষণা
datatype& refer_var = variable_name; // রেফারেন্স ভেরিয়েবল

এখানে,

  • datatype − int, char, float ইত্যাদি ডেটা টাইপ।
  • variable_name − ইউজার দেওয়া ভেরিয়েবলের নাম।
  • refer_var − রেফারেন্স ভেরিয়েবলের নাম।

রেফারেন্স ভেরিয়েবলের উদাহরণ:

উদাহরণ

#include <iostream>
using namespace std;
int main() {
    int a = 8;
    int& b = a;
    cout << "The variable a: " << a;
    cout << "\nThe reference variable r: " << b;
    return 0;
}

আউটপুট

The variable a: 8
The reference variable r: 8

পয়েন্টার

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

পয়েন্টারের সিনট্যাক্স:

datatype *variable_name;

এখানে,

  • datatype − int, char, float ইত্যাদি ডেটা টাইপ।
  • variable_name − ইউজার দেওয়া ভেরিয়েবলের নাম।

পয়েন্টারের উদাহরণ:

উদাহরণ

#include <stdio.h>
int main() {
    int a = 8;
    int *ptr;
    ptr = &a;
    printf("Value of variable: %d\n", a);
    printf("Address of variable: %d\n", ptr);
    printf("Value pointer variable: %d\n", *ptr);
    return 0;
}

আউটপুট

Value of variable: 8
Address of variable: -201313340
Value pointer variable: 8

  1. C++-এ রেফারেন্স ভেরিয়েবল কী?

  2. C/C++ পয়েন্টার (Pointer) vs জাভা রেফারেন্স (Reference) - পার্থক্য

  3. C++-এ ভার্চুয়াল ডিস্ট্রাক্টর (Virtual Destructor) কখন ব্যবহার করা উচিত?

  4. C/C++-এ ফরওয়ার্ড ডিক্লেরেশন (Forward Declaration) কখন ব্যবহার করা যায়?