কিভাবে একটি ফাংশন থেকে একটি অ্যারে ফিরিয়ে আনবেন

সুচিপত্র:

কিভাবে একটি ফাংশন থেকে একটি অ্যারে ফিরিয়ে আনবেন
কিভাবে একটি ফাংশন থেকে একটি অ্যারে ফিরিয়ে আনবেন

ভিডিও: কিভাবে একটি ফাংশন থেকে একটি অ্যারে ফিরিয়ে আনবেন

ভিডিও: কিভাবে একটি ফাংশন থেকে একটি অ্যারে ফিরিয়ে আনবেন
ভিডিও: কিভাবে একটি ফাংশন থেকে অ্যারে ফেরত দিতে হয় 2024, মে
Anonim

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

কিভাবে একটি ফাংশন থেকে একটি অ্যারে ফিরিয়ে আনবেন
কিভাবে একটি ফাংশন থেকে একটি অ্যারে ফিরিয়ে আনবেন

নির্দেশনা

ধাপ 1

সি ++ প্রোগ্রামিং ল্যাঙ্গুয়েজে কোনও ফাংশন থেকে সরাসরি অ্যারের রিটার্ন সরবরাহ করা হয় না; ডেটা অ্যারেতে একটি পয়েন্টার পাস করে এই কাজটি সমাধান করা যেতে পারে। এটি করার জন্য, ফাংশনটি ব্যবহারের ঘোষণা করার সময়, এটি কোনও প্রকার হিসাবে ডেটা টাইপের পয়েন্টার হিসাবে আপনি যে স্থানটি স্থানান্তর করার পরিকল্পনা করছেন তা লিখুন।

সি ++ প্রোগ্রাম কোডের একটি উদাহরণ যা কোনও পয়েন্টারের দ্বারা অ্যারের ডেটা ফেরত কার্যকর করে:

ক্লাস-সহায়তা

{

ব্যক্তিগত:

int m_data [4];

জনসাধারণ:

fDebit ()

{

মি_ডাটা [0] = 42;

মি_ডাটা [1] = 56;

}

int * returnArray () // ফাংশন ঘোষণা এবং বিবরণ

{

ফেরত এম_ডাটা;

}

};

অকার্যকর প্রধান ()

{

int * m_dataA;

Elহেল্প * ওহেল্প = নতুন el সহায়তা ();

m_dataA = ohelp-> রিটার্নআরে (); // একটি শ্রেণীর অ্যারে ফিরিয়ে দিন

}

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

ধাপ ২

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

এই জাতীয় কার্যকারিতা ঘোষণার একটি উদাহরণ:

অকার্যকর my_funk_1 (কনস্টাল ডাবল * ইন, ডবল * আউট);

ধাপ 3

স্ট্যান্ডার্ড:: অটো_পিটার বাস্তবায়িত শ্রেণি ব্যবহার করুন, যা ভেরিয়েবল স্কোপ সহ ত্রুটি ছাড়াই একটি ফাংশন থেকে পয়েন্টারটি পাস করার সমস্যা সমাধান করে।

নমুনা প্রোগ্রাম কোড:

অন্তর্ভুক্ত

অন্তর্ভুক্ত

int rrr_f2 (int গণনা) // ফাংশন বিবরণ

{

ফিরতি নতুন ইনট [গণনা];

}

অকার্যকর প্রধান ()

{

স্টাড:: অটো_সিপিআর পিটিআর (rrr_f2 (20%); // ফাংশনটি কল করুন এবং এটির মাধ্যমে একটি অ্যারের ফিরিয়ে দিন

কোট

পদক্ষেপ 4

ফক্সপ্রো প্রোগ্রামিং ল্যাঙ্গুয়েজে ফাংশন রিটার্ন একইভাবে আগে তৈরি করা অ্যারে উল্লেখ করে প্রয়োগ করা যেতে পারে।

ফক্সপ্রোতে নমুনা কোড:

স্থানীয় মাস (2)

= ফানক_2 (@ এফ 3)

? মাস (15)

? মাস (20)

ফাংশন ফানক_2 (মাস)

বাহ্যিক আগমন মাস

মাস (1) = 1

মাস (2) = 2

ফিরে আসুন

সমাপ্তি

পদক্ষেপ 5

অটোআইটি স্ক্রিপ্টিং ল্যাঙ্গুয়েজ আপনাকে স্ট্যান্ডার্ড কনস্ট্রাক্টস এবং রিটার্ন অপারেটর ব্যবহার করে একটি ফাংশন থেকে একটি অ্যারে ফেরত দিতে দেয়।

অটোআইটি ভাষায় নমুনা কোড:

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

Z রেজ = ফানকস ()

R aRezultat = স্ট্রিংস্প্লিট (z রেজ, '|')

Func func_3 ()

R aRet = 15 & '|' & 40

ফাংশন থেকে $ aRet // রিটার্ন অ্যারে aRet ফিরে আসুন

EndFunc

প্রস্তাবিত: