কিভাবে C++ এ ফাংশন থেকে একটি পয়েন্টার রিটার্ন করবেন

Kibhabe C E Phansana Theke Ekati Payentara Ritarna Karabena



C++ ফাংশনে একটি কোডের ব্লক যা কিছু ফাংশন সঞ্চালনের জন্য চালু করা হয় এবং ফাংশনের ভেরিয়েবলগুলিকে নির্দেশ করতে পয়েন্টার ব্যবহার করা হয়। ঠিকানার সাথে পয়েন্টার বরাদ্দ করা হয়।

কিভাবে C++ এ ফাংশন থেকে একটি পয়েন্টার রিটার্ন করবেন

C++ এ একটি ফাংশন থেকে একটি পয়েন্টার ফেরত দেওয়া সম্ভব। এটি সেই ফাংশনের পয়েন্টার হিসাবে একটি রিটার্ন টাইপ ফাংশন ঘোষণা করে অর্জন করা যেতে পারে। তৈরি করা প্রতিটি ফাংশন মেমরিতে একটি মনোনীত ঠিকানা নেয়। ফাংশনের নামের বাম দিকে তারকাচিহ্ন * সন্নিবেশ করা হয়।







বাক্য গঠন

এটি C++ এ একটি ফাংশন থেকে একটি পয়েন্টার ফেরানোর জন্য একটি সিনট্যাক্স:



ফিরে প্রকার ( * ফাংশন_পয়েন্টার_নাম ) ( আর্গুমেন্ট_টাইপ_1, আর্গুমেন্ট_টাইপ_2, ……, আর্গুমেন্ট_টাইপ_এন ) = ফাংশন_নাম ;

উদাহরণ 1

এই উদাহরণটি C++ এ একটি ফাংশন থেকে একটি পয়েন্টার ফেরত দেওয়ার চিত্র তুলে ধরে:



# অন্তর্ভুক্ত করুন

ব্যবহার নামস্থান std ;

অকার্যকর ফলাফল ( int এবং )

{

+ = 10 ;

}

int প্রধান ( )

{

int এক্স = 40 ;

//পয়েন্টার ফাংশন থেকে রিটার্ন করে

অকার্যকর ( * ptr ) ( int এবং ) = এবং ফলাফল ;

ptr ( এক্স ) ;

cout << এক্স << endl ;

ফিরে 0 ;

}

এই সোর্স কোডে, একটি অকার্যকর ফলাফল ফাংশন ঘোষণা করা হয় এবং int a এর রেফারেন্স নেয় যা 10 বার বৃদ্ধি করা হয়। একটি ভেরিয়েবল x 40 মান সঞ্চয় করে এবং *ptr ফাংশন int& এর দিকে নির্দেশ করে। ptr ফলাফলের দিকে নির্দেশ করে, তাই x 10 দ্বারা বৃদ্ধি পায়।





ইনপুট x এর মান 10 দ্বারা বৃদ্ধি করা হয় এবং 50 দ্বারা ফেরত দেওয়া হয়।



উদাহরণ 2

এটি একটি উদাহরণ যা কর্মীদের সাপ্তাহিক বেতন গণনা করে:

# অন্তর্ভুক্ত করুন

ব্যবহার নামস্থান std ;

দ্বিগুণ এবং GetWeeklyHours ( )

{

দ্বিগুণ = 32.65 ;

দ্বিগুণ এবং ঘন্টার = ;

ফিরে ঘন্টার ;

}

দ্বিগুণ * বেতন পান ( )

{

দ্বিগুণ বেতন = 42.48 ;

দ্বিগুণ * ঘন্টায় বেতন = এবং বেতন ;

ফিরে ঘন্টায় বেতন ;

}

int প্রধান ( )

{

দ্বিগুণ ঘন্টার = GetWeeklyHours ( ) ;

দ্বিগুণ বেতন = * বেতন পান ( ) ;

cout << 'শ্রমিকদের সাপ্তাহিক সময়:  ' << ঘন্টার << endl ;

cout << 'শ্রমিকদের ঘন্টায় বেতন: ' << বেতন << endl ;

দ্বিগুণ সাপ্তাহিক বেতন = ঘন্টার * বেতন ;

cout << 'শ্রমিকদের সাপ্তাহিক বেতন:' << সাপ্তাহিক বেতন << endl ;

ফিরে 0 ;

}

এই সোর্স কোডে, ঘন্টা এবং প্রতি ঘন্টা বেতন ইনপুট হয়। এই পরামিতিগুলি অ্যাক্সেস করতে এবং কর্মীদের সাপ্তাহিক বেতন গণনা করতে ফাংশনের পদ্ধতি থেকে রিটার্ন পয়েন্টার ব্যবহার করা হয়।

সাপ্তাহিক ঘন্টা এবং ঘন্টার বেতন জেনে, উভয় পদকে গুণ করে সাপ্তাহিক বেতন গণনা করা যেতে পারে।

উপসংহার

C++ এ একটি ফাংশন থেকে একটি পয়েন্টার ফেরত দেওয়া সম্ভব। এটি সেই ফাংশনের পয়েন্টার হিসাবে একটি রিটার্ন টাইপ ফাংশন ঘোষণা করে অর্জন করা যেতে পারে। তৈরি করা প্রতিটি ফাংশন মেমরিতে একটি মনোনীত ঠিকানা নেয়।