স্ট্যাটিক ভ্যারিয়েবল এবং স্ট্যাটিক ফাংশনের ভূমিকা:
স্ট্যাটিক ভ্যারিয়েবল (Static Variable):
- স্ট্যাটিক ভ্যারিয়েবল হল এমন একটি ভ্যারিয়েবল যা একবার ডিফাইন করার পর পুরো প্রোগ্রাম চলাকালীন তার মান সংরক্ষণ করে। এটি সাধারণত ফাংশন বা ক্লাসের মধ্যে ব্যবহৃত হয়।
- যখন একটি ভ্যারিয়েবল স্ট্যাটিক হিসাবে ডিক্লেয়ার করা হয়, এটি ফাংশনের মধ্যে বারবার কল হওয়ার পরও তার পূর্ববর্তী মান সংরক্ষণ করে, যদিও ফাংশনটি একাধিক বার কল করা হোক।
- স্ট্যাটিক ভ্যারিয়েবল গ্লোবাল স্কোপে থাকে, তবে তার দৃশ্যমানতা ফাংশন বা ক্লাসের মধ্যে সীমাবদ্ধ থাকে।
স্ট্যাটিক ভ্যারিয়েবলের উদাহরণ:
#include
using namespace std;
void counter() {
static int count = 0; // স্ট্যাটিক ভ্যারিয়েবল
count++;
cout
কাজের ব্যাখ্যা:
- এখানে, count একটি স্ট্যাটিক ভ্যারিয়েবল যা ফাংশন প্রতিবার কল করার পরেও তার মান ধরে রাখে।
- ফাংশনটি বারবার কল করার পরেও count এর মান বৃদ্ধি পায় এবং তার আগের মান সংরক্ষণ হয়।
স্ট্যাটিক ফাংশন (Static Function):
- স্ট্যাটিক ফাংশন হলো এমন একটি ফাংশন যা কেবলমাত্র নিজের ক্লাসের স্ট্যাটিক ডেটা সদস্যদের অ্যাক্সেস করতে পারে এবং এটি ক্লাসের ইনস্ট্যান্স ছাড়াও কল করা যেতে পারে।
- স্ট্যাটিক ফাংশনকে ক্লাসের ইনস্ট্যান্স তৈরি না করেও কল করা যায়।
- এটি শুধুমাত্র ক্লাসের স্ট্যাটিক সদস্যদের সাথে কাজ করে, অর্থাৎ এটি ক্লাসের সাধারণ সদস্যদের অ্যাক্সেস করতে পারে না।
স্ট্যাটিক ফাংশনের উদাহরণ:
#include
using namespace std;
class MyClass {
private:
static int count; // স্ট্যাটিক ভ্যারিয়েবল
public:
static void incrementCount() { // স্ট্যাটিক ফাংশন
count++;
cout
কাজের ব্যাখ্যা:
- এখানে, incrementCount() একটি স্ট্যাটিক ফাংশন যা ক্লাসের স্ট্যাটিক ভ্যারিয়েবল count অ্যাক্সেস করে।
- স্ট্যাটিক ফাংশনকে ক্লাসের ইনস্ট্যান্স ছাড়াই কল করা যায় এবং এটি শুধুমাত্র স্ট্যাটিক সদস্যদের অ্যাক্সেস করতে সক্ষম।
সারাংশ:
- স্ট্যাটিক ভ্যারিয়েবলগুলি ফাংশন বা ক্লাসের মধ্যে একবার সেট করার পর পুরো প্রোগ্রাম চলাকালীন তাদের মান সংরক্ষণ করে।
- স্ট্যাটিক ফাংশনগুলি শুধুমাত্র ক্লাসের স্ট্যাটিক সদস্যদের অ্যাক্সেস করতে পারে এবং ইনস্ট্যান্স তৈরি না করেও কল করা যায়।