1
1
class Student{

       long Roll;
       char name[40];

protected:

float Marks;

public:

void GetData();

void Display();

};

void Student::GetData(){

}

void Student::Display(){

}

এইখানে পাবলিক ক্লাসেই তো GetData() এবং Display() এর কি কি কাজ হবে করে নিতে পারি। তাহলে, আলাদা করে কেন স্কোপ রেজুলেশন অপারেটর ব্যবহার করতাছি? যদি কেউ ভালভাবে বুঝিয়ে বলতেন উপকৃত হবো। অনেক কনফিউজ এই টপিক্সটা নিয়া।

asked 07 Sep '16, 18:36

Error%20403's gravatar image

Error 403
875

edited 08 Sep '16, 04:49

Kaiser%20Ahmed's gravatar image

Kaiser Ahmed
3.2k522


কোন কিছুর (ফাংশন, ভ্যারিয়েবল) পরিধি যতটুকু অংশ জুড়ে ততটুকু অংশকে তার স্কোপ বলে। যেমন: একটি ভ্যারিয়েবল অথবা ফাংশনের স্কোপ বা পরিধি হতে পারে কোন একটি ক্লাশ, কোন একটি নেম স্পেস এরকম। স্কোপ অপারেটরটি ব্যবহার করা হয়, ভ্যারিয়েবলটি বা ফাংশনটি কোন স্কোপের অংশ সেটা বোঝাতে। যেমন আপনার উদাহরণে স্কোপ অপারেটরটি দিয়ে বোঝাচ্ছে GetData() এবং Display() ফাংশনটির স্কোপ Student ক্লাশ। যেহেতু আপনি ফাংশনটির বিবরণ(Implementation) ক্লাশ এর বাইরে দিচ্ছেন, তাই স্কোপ অপারেটর যুক্ত করতে হচ্ছে; এতে বোঝা যাচ্ছে ফাংশনটি Student ক্লাশ এর, সাধারণ ফাংশন নয়।

permanent link

answered 08 Sep '16, 19:09

Ashfaqur%20Rahman's gravatar image

Ashfaqur Rahman
78310

এটা তেমন কিছুই না । আপনি ইচ্ছা করলে ক্লাসের মধ্যেই GetData() ও Display() ফাংশন ডিফাইন করতে পারেন । কিন্তু আপনার ফাংশন সংখ্যা যদি অনেকগুল হয় প্লাস ফাংশনের ডেফিনেসন অনেক বড় বড় হয় তখন এই গুল কন্ট্রোল করা একটু কষ্টকর হবে । এই জন্যই :: ব্যবহার করে কাজটা সহজ করে দেয়া হয়েছে । যাতে করে আপনি আপনার ফাংশনটা আপনার ক্লাসের বাহিতে রাখতে পারেন ।

ধন্যবাদ :)

permanent link

answered 07 Sep '16, 19:36

menon's gravatar image

menon
4.7k335

Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:

×131
×13
×1

question asked: 07 Sep '16, 18:36

question was seen: 864 times

last updated: 08 Sep '16, 19:09