কম্পিউটার

C++ এ নেমস্পেস


একটি পরিস্থিতি বিবেচনা করুন, যখন আমাদের একই ক্লাসে একই নামের জারা দুই ব্যক্তি থাকে। যখনই আমাদের তাদের আলাদা করার প্রয়োজন হয় তখনই আমাদের তাদের নামের সাথে কিছু অতিরিক্ত তথ্য ব্যবহার করতে হবে, যেমন এলাকা, যদি তারা ভিন্ন এলাকায় থাকেন বা তাদের মা বা বাবার নাম ইত্যাদি।

আপনার C++ অ্যাপ্লিকেশনে একই পরিস্থিতি দেখা দিতে পারে। উদাহরণস্বরূপ, আপনি এমন কিছু কোড লিখতে পারেন যার একটি ফাংশন আছে xyz() এবং সেখানে আরেকটি লাইব্রেরি উপলব্ধ রয়েছে যেখানে একই ফাংশন xyz() রয়েছে। এখন কম্পাইলারের কাছে xyz() ফাংশনের কোন সংস্করণটি আপনি আপনার কোডের মধ্যে উল্লেখ করছেন তা জানার উপায় নেই৷

একটি নেমস্পেস এই অসুবিধা কাটিয়ে ওঠার জন্য ডিজাইন করা হয়েছে এবং বিভিন্ন লাইব্রেরিতে উপলব্ধ একই নামের একই ধরনের ফাংশন, ক্লাস, ভেরিয়েবল ইত্যাদিকে আলাদা করার জন্য অতিরিক্ত তথ্য হিসাবে ব্যবহার করা হয়। নামস্থান ব্যবহার করে, আপনি প্রসঙ্গটি সংজ্ঞায়িত করতে পারেন যার নামগুলি সংজ্ঞায়িত করা হয়েছে। সংক্ষেপে, একটি নামস্থান একটি সুযোগকে সংজ্ঞায়িত করে৷

নেমস্পেস সংজ্ঞায়িত করা

একটি নামস্থানের সংজ্ঞা শুরু হয় কীওয়ার্ড নেমস্পেস দিয়ে এবং তারপরে নেমস্পেস নামটি নিম্নরূপ –

namespace namespace_name {
   // code declarations
}

যেকোনও ফাংশন বা ভেরিয়েবলের নেমস্পেস-সক্রিয় সংস্করণকে কল করতে, নিচের মত করে নামস্থানের নাম পূর্বে (::) লিখুন –

name::code; // code could be variable or function.

উদাহরণ

#include <iostream>
using namespace std;
// first name space
namespace first_space {
   void func() {
      cout << "Inside first_space" << endl;
   }
}
// second name space
namespace second_space {
   void func() {
      cout << "Inside second_space" << endl;
   }
}
int main () {
   // Calls function from first name space.
   first_space::func();
   // Calls function from second name space.
   second_space::func();
   return 0;
}

আউটপুট

Inside first_space
Inside second_space

  1. নামস্থান C++ এ নেস্ট করা যাবে?

  2. C++ এ 'নেমস্পেস std ব্যবহার করা' মানে কি?

  3. পিএইচপি নাম সমাধানের নিয়ম

  4. পিএইচপি নেমস্পেস ওভারভিউ