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



এই নিবন্ধটি আপনাকে C ++ এ স্কোপ রেজুলেশন অপারেটরের সাথে পরিচয় করিয়ে দেবে এবং বিশদ বোঝার জন্য এটি প্রোগ্রাম্যাটিক বিক্ষোভ অনুসরণ করবে।

নামটি যেমন বোঝায়, স্কোপ রেজোলিউশন অপারেটরটি ভেরিয়েবল স্কোপের কারণে লুকানো নামগুলি পেতে ব্যবহার করা হয় যাতে আপনি এখনও সেগুলি ব্যবহার করতে পারেন। এই নিবন্ধে আমরা সি ++ এ স্কোপ রেজোলিউশন অপারেটরটি কীভাবে ব্যবহার করব এবং এ থেকে এর বিভিন্ন উদ্দেশ্যগুলি কী কী তা বুঝতে পারি ।

সি ++ তে স্কোপ রেজোলিউশন অপারেটর ::। সি ++ তে স্কোপ রেজোলিউশন অপারেটর এর জন্য ব্যবহার করা যেতে পারে:





এখন উদাহরণগুলির সাহায্যে একে অপরের উদ্দেশ্যটি বুঝতে পারি।

যখন একটি স্থানীয় ভেরিয়েবল থাকে তখন একটি গ্লোবাল ভেরিয়েবল অ্যাক্সেস করা হয় একই নাম

আপনার যদি একই নামের সাথে স্থানীয় ভেরিয়েবল থাকে তবে আপনি গ্লোবাল ভেরিয়েবল অ্যাক্সেস করতে স্কোপ রেজোলিউশন অপারেটরটি ব্যবহার করতে পারেন। নীচের উদাহরণে আমাদের দুটি বৈকল্পিক রয়েছে নাম বৈশ্বিক এবং স্থানীয় সুযোগের সাথে নাম দুটি num সুতরাং, প্রধান শ্রেণিতে গ্লোবাল নাম্বার ভেরিয়েবল অ্যাক্সেস করতে আপনার স্কোপ রেজোলিউশন অপারেটর (যেমন: নাম্বার) ব্যবহার করা দরকার।



উদাহরণ

# নেমস্পেস ব্যবহার করে std int num = 30 // বিশ্বব্যাপী ভেরিয়েবল num ইন্ট মেইন () num int num = 10 // স্থানীয় ভেরিয়েবল নাম কোট শুরু করা<< 'Value of global num is ' << ::num cout << 'nValue of local num is ' << num return 0 } 

আউটপুট

সি ++ তে স্কোপ রেজোলিউশন অপারেটর সম্পর্কিত এই নিবন্ধটি নিয়ে চালিত



ক্লাসের বাইরে কোনও ফাংশন সংজ্ঞায়িত করা

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

উদাহরণ

# নেমস্পেস স্ট্যান্ড ক্লাস বাইক ব্যবহার করে অন্তর্ভুক্ত করুন {সর্বজনীন: // কেবল কার্যকারিতা ঘোষণারটি শূন্য গতি ()} // বাইক শ্রেণীর বাইরে গতি ফাংশনটি :: অকার্যকর বাইক :: গতি () {কোট ব্যবহার করে সংজ্ঞায়িত করুন<< 'Speed of Bike is 90 KMPH' } int main() { Bike bike bike.Speed() return 0 } 

আউটপুট

সি ++ তে স্কোপ রেজোলিউশন অপারেটর সম্পর্কিত এই নিবন্ধটি নিয়ে চালিত

একটি শ্রেণীর স্থির অ্যাক্সেস করা পরিবর্তনশীল

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

উদাহরণ

# নেমস্পেস স্ট্যান্ড ক্লাস ব্যবহার করে অন্তর্ভুক্ত করুন Try স্ট্যাটিক ইন্ট নাম্বার সর্বজনীন: স্ট্যাটিক ইন্ট নাম্বার // স্থানীয় প্যারামিটার ক্লাস সদস্যকে আড়াল করে // ক্লাস সদস্যকে এটি ব্যবহার করে ব্যবহার করা যেতে পারে :: শূন্য ফাংশন (ইন্ট নাম্বার) ces // num1 স্ট্যাটিক ভেরিয়েবল ব্যবহার করে অ্যাক্সেস করা যায় :: // স্থানীয় ভেরিয়েবল নাম্বার কোট সত্ত্বেও<< 'Static num1: ' << Try::num1 cout << 'nLocal num1: ' << num1 } } // Defining a static members explicitly using :: int Try::num1 = 10 int Try::num2 = 15 int main() { Try o int num1 = 20 o.function(num1) cout << 'nTry::num2 = ' << Try::num2 return 0 } 

আউটপুট

সি ++ তে স্কোপ রেজোলিউশন অপারেটর সম্পর্কিত এই নিবন্ধটি নিয়ে চালিত

অন্য শ্রেণীর অভ্যন্তরে একটি শ্রেণি উল্লেখ করে

আপনি উভয় ক্লাসে একই ভেরিয়েবল নাম সহ নেস্টেড ক্লাস তৈরি করতে পারেন। স্কোপ রেজোলিউশন অপারেটর ব্যবহার করে আপনি উভয় ভেরিয়েবল অ্যাক্সেস করতে পারেন। অভ্যন্তর শ্রেণীর পরিবর্তনশীলগুলির জন্য, আপনাকে ব্যবহার করা দরকার বহির_ক্লাস :: অভ্যন্তরীণ_ক্লাস :: পরিবর্তনশীল।

উদাহরণ

# অন্তর্নিহিত_ক্লাস name সর্বজনীন: নেমস্পেস স্টাড ক্লাস ব্যবহার করে অন্তর্ভুক্ত করুন {পাবলিক: ইনটি নাম ক্লাস ইনসাইড_ক্লাস {পাবলিক: ইনটি নাম স্ট্যাটিক ইন্ট x}} ইন্ট আউটসাইড_ক্লাস :: ইনসাইড_ ক্লাস :: এক্স = 5 ইন্ট মেন () uts বাইরের বাইরে_ক্লাস আউটসাইড_ ক্লাস :: ইনসাইড_ ক্লাস বি}

সি ++ তে স্কোপ রেজোলিউশন অপারেটর সম্পর্কিত এই নিবন্ধটি নিয়ে চালিত

একাধিক উত্তরাধিকারের ক্ষেত্রে

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

নীচের উদাহরণে, আমরা দুটি প্যারেন্ট ক্লাস প্যারেন্ট 1 এবং প্যারেন্ট 2 তৈরি করছি এবং তাদের উভয়েরই পরিবর্তনশীল সংখ্যা রয়েছে। আমরা যখন শিশু ক্লাসে তাদের উভয়কেই উত্তরাধিকার সূত্রে পাই তখন আমরা শ্রেণীর নাম এবং স্কোপ রেজোলিউশন অপারেটর ব্যবহার করে দুটি নাম্বার ভেরিয়েবল অ্যাক্সেস করতে পারি।

উদাহরণ

# নেমস্পেস স্ট্যান্ড ক্লাস প্যারেন্ট 1 ব্যবহার করে অন্তর্ভুক্ত করুন: সুরক্ষিত: পূর্ব সংখ্যা পাবলিক: প্যারেন্ট 1 () {নাম = 100}} ক্লাস প্যারেন্ট 2 {সুরক্ষিত: পূর্ব সংখ্যা পাবলিক: প্যারেন্ট 2 () {নাম = 200}} শ্রেণি শিশু: পাবলিক প্যারেন্ট 1, পাবলিক প্যারেন্ট 2 { সর্বজনীন: শূন্য ফাংশন () out cout<< 'Parent1's num is ' << Parent1::num cout << 'nParent2's num is ' << Parent2::num } } int main() { Child obj obj.function() return 0 } 

আউটপুট

সি ++ তে স্কোপ রেজোলিউশন অপারেটর সম্পর্কিত এই নিবন্ধটি নিয়ে চালিত

নেমস্পেস

ধরুন আমাদের দুটি নেমস্পেস রয়েছে এবং উভয়টিতে একই নামের ক্লাস রয়েছে। সুতরাং কোনও বিরোধ না এড়াতে আমরা স্কোপ রেজোলিউশন অপারেটরের সাথে নেমস্পেসের নামটি ব্যবহার করতে পারি। নীচের উদাহরণে আমরা ব্যবহার করছি std :: cout

উদাহরণ

কিভাবে জাভা একটি গাদা করতে
# অন্তর্নির্মিত মেইন () d স্টাড :: কোট অন্তর্ভুক্ত করুন<< 'Hello' << std::endl } 

আউটপুট

এখন উপরের প্রোগ্রামগুলি যাবার পরে আপনি C ++ এ স্কোপ রেজোলিউশন অপারেটর সম্পর্কে সমস্ত কিছু বুঝতে পারবেন। আমি আশা করি এই ব্লগটি তথ্যবহুল এবং আপনার কাছে মূল্য সংযোজনযোগ্য।

উপরের প্রোগ্রামটি কার্যকর করার পরে আপনি C ++ এ স্কোপ রেজোলিউশন অপারেটরটি বুঝতে পারবেন। এভাবে আমরা ‘জাভায় কুইকোর্ট’ শীর্ষক এই নিবন্ধটির শেষে এসেছি। আপনি যদি আরও শিখতে চান তবে একটি বিশ্বস্ত অনলাইন লার্নিং সংস্থা এডুরেকা দ্বারা জাভা প্রশিক্ষণটি দেখুন। এডুরেকার জাভা জে 2 ইই এবং এসওএ প্রশিক্ষণ এবং শংসাপত্রের কোর্সটি হিবারনেট ও স্প্রিংয়ের মতো বিভিন্ন জাভা ফ্রেমওয়ার্কের পাশাপাশি আপনাকে মূল এবং উন্নত জাভা উভয় ধারণার জন্য প্রশিক্ষণের জন্য তৈরি করা হয়েছে।

আমাদের জন্য একটি প্রশ্ন আছে? দয়া করে এই ব্লগের মন্তব্য বিভাগে এটি উল্লেখ করুন এবং আমরা যত তাড়াতাড়ি সম্ভব আপনার কাছে ফিরে আসব।