কম্পিউটার

কিভাবে C++ প্রোগ্রামের ফাংশনে অবজেক্ট পাস করবেন?


ফাংশনে অবজেক্ট পাস করার চারটি উপায় রয়েছে। ধরুন আপনার দশম শ্রেণী আছে এবং আপনি এটিকে একটি মজার ফাংশনে পাস করতে চান, তারপর

মূল্য দ্বারা পাস

এটি ফাংশনের সুযোগে বস্তুর একটি অগভীর স্থানীয় অনুলিপি তৈরি করে। আপনি এখানে যে জিনিসগুলি পরিবর্তন করবেন তা এটিতে পাঠানো বস্তুতে প্রতিফলিত হবে না৷ উদাহরণস্বরূপ,

ঘোষণা

void fun(X x);

কল করা হচ্ছে

X x;
fun(x);

রেফারেন্স বাই

এটি ফাংশনে বস্তুর একটি রেফারেন্স পাস করে। আপনি এখানে যে জিনিসগুলি পরিবর্তন করবেন তা এটিতে পাঠানো বস্তুতে প্রতিফলিত হবে। বস্তুর কোন অনুলিপি তৈরি করা হয় না. উদাহরণস্বরূপ,

ঘোষণা

void fun(X &x);

কল করা হচ্ছে

X x;
fun(x);

কস্ট রেফারেন্স দ্বারা পাস করুন

এটি ফাংশনে অবজেক্টের একটি কনস্ট রেফারেন্স পাস করে। আপনি এখানে বস্তুটিকে সরাসরি সংশোধন/পুনরায় বরাদ্দ করতে পারবেন না (যদিও আপনি এটির পদ্ধতিগুলি ব্যবহার করতে পারেন)। আপনি যদি ফাংশনটিতে অবজেক্টের শুধুমাত্র একটি পঠনযোগ্য অনুলিপি রাখতে চান তবে এটি কার্যকর। বস্তুর কোন অনুলিপি তৈরি করা হয় না. উদাহরণস্বরূপ,

ঘোষণা

void fun(X const *x);

কল করা হচ্ছে

X x;
fun(&x);

const পয়েন্টার দ্বারা পাস করুন

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

ঘোষণা

void fun(X *x);

কল করা হচ্ছে

X x;
fun(&x);

পয়েন্টার দ্বারা পাস

এই ফাংশন অবজেক্ট একটি পয়েন্টার পাস. এটি বস্তুর একটি রেফারেন্স পাস করার অনুরূপ। বস্তুর কোন অনুলিপি তৈরি করা হয় না। উদাহরণস্বরূপ,

ঘোষণা

<void fun(X *x);>

কল করা হচ্ছে

X x;
fun(&x);

  1. কিভাবে জাভাস্ক্রিপ্টে বস্তু তৈরি করবেন?

  2. কিভাবে জাভাস্ক্রিপ্টে বেনামী ফাংশন আর্গুমেন্ট পাস?

  3. আমি কিভাবে C++ এ একটি Ctrl+C ইভেন্ট ধরব?

  4. কিভাবে C++ প্রোগ্রাম ব্যবহার করে একটি প্রোগ্রাম চালু করবেন?