এখানে আমরা দেখব সি++-এ স্ট্যাটিক মেম্বার ভেরিয়েবল ইনিশিয়ালাইজেশন কীভাবে করা যায়। সি++ ক্লাসে আমরা স্ট্যাটিক মেম্বার (ফাংশন বা ভেরিয়েবল) রাখতে পারি। স্ট্যাটিক ভেরিয়েবলগুলোকে ক্লাস ডেফাইন করার পর ইনিশিয়ালাইজ করতে হয়।
ইনিশিয়ালাইজ করতে হলে ক্লাসের নাম, তারপর স্কোপ রেজোলিউশন অপারেটর (::), তারপর ভেরিয়েবলের নাম ব্যবহার করতে হয়। এখন মান অ্যাসাইন করা যায়।
নিচের কোডটি স্ট্যাটিক মেম্বার ইনিশিয়ালাইজ করার কৌশল দর্শায়।
উদাহরণ
#include <iostream>
using namespace std;
class MyClass {
private:
static int st_var;
public:
MyClass() {
st_var++; // নতুন অবজেক্ট তৈরি হলে st_var বাড়ানো
}
static int getStaticVar() {
return st_var;
}
};
int MyClass::st_var = 0; // স্ট্যাটিক ইনিশিয়ালাইজ করা
int main() {
MyClass ob1, ob2, ob3; // তিনটি অবজেক্ট তৈরি
cout << "Number of objects: " << MyClass::getStaticVar();
}
আউটপুট
Number of objects: 3