কম্পিউটার

C++ এ স্কোপ রেজোলিউশন অপারেটরের ব্যবহার কী?


::(স্কোপ রেজোলিউশন) অপারেটরটি পরিবর্তনশীল স্কোপের কারণে লুকানো নাম পেতে ব্যবহৃত হয় যাতে আপনি এখনও সেগুলি ব্যবহার করতে পারেন। স্কোপ রেজোলিউশন অপারেটর ইউনারী এবং বাইনারি উভয় হিসাবে ব্যবহার করা যেতে পারে

আপনি একক স্কোপ অপারেটর ব্যবহার করতে পারেন যদি একটি ব্লক বা ক্লাস চলাকালীন একই নামের একটি নির্দিষ্ট ঘোষণা দ্বারা একটি নেমস্পেস স্কোপ বা গ্লোবাল স্কোপের নাম লুকানো থাকে। উদাহরণস্বরূপ, যদি আপনার কাছে my_var নামের একটি গ্লোবাল ভেরিয়েবল এবং my_var নামের একটি স্থানীয় ভেরিয়েবল থাকে, তাহলে গ্লোবাল my_var অ্যাক্সেস করতে, আপনাকে স্কোপ রেজোলিউশন অপারেটর ব্যবহার করতে হবে। উদাহরণস্বরূপ,

উদাহরণ

নেমস্পেস std ব্যবহার করে
#include <iostream>  
using namespace std;  

int my_var = 0;
int main(void) {
   int my_var = 0;
   ::my_var = 1;  // set global my_var to 1
   my_var = 2;    // set local my_var to 2

   cout << ::my_var << ", " << my_var;
   return 0;
}

আউটপুট

এটি আউটপুট দেবে −

1, 2

প্রধান ফাংশনে ঘোষিত my_var-এর ঘোষণা গ্লোবাল নেমস্পেস স্কোপে ঘোষিত my_var নামের পূর্ণসংখ্যাকে লুকিয়ে রাখে। বিবৃতি ::my_var =1 গ্লোবাল নেমস্পেস স্কোপে ঘোষিত my_var নামের ভেরিয়েবলটিকে অ্যাক্সেস করে।

এছাড়াও আপনি স্কোপ রেজোলিউশন অপারেটর ব্যবহার করতে পারেন ক্লাসের নাম বা ক্লাস সদস্যদের নাম ব্যবহার করতে। যদি কোনো শ্রেণীর সদস্যের নাম লুকানো থাকে, তাহলে আপনি এটিকে এর ক্লাসের নাম এবং ক্লাস স্কোপ অপারেটরের সাথে উপসর্গ দিয়ে ব্যবহার করতে পারেন। উদাহরণস্বরূপ,

উদাহরণ

#include <iostream>
using namespace std;

class X {
   public:
   static int count;
};

int X::count = 10;      // define static data member
int main () {
   int X = 0;          // hides class type X
   cout << X::count << endl;   // use static member of class X
}
এর স্ট্যাটিক সদস্য ব্যবহার করুন

আউটপুট

এটি আউটপুট দেবে −

10

  1. উইন্ডোতে c++ এর জন্য শীর্ষ IDE কি?

  2. C# এ স্কোপ রেজোলিউশন অপারেটর কি?

  3. C# এ সাইজঅফ অপারেটরের ব্যবহার কী?

  4. কোথায় আমরা C# এ স্কোপ রেজোলিউশন অপারেটর (::) ব্যবহার করব?