ইনলাইন এবং ম্যাক্রোর মধ্যে পার্থক্য

Anonim

ইনলাইন বনাম ম্যাক্রো

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

এটা দুইর মধ্যে একটি ছোট্ট পার্থক্য নেই, তবে তারা যে সম্পত্তিগুলি ধরে রেখেছে তার কারণে তারা বিভ্রান্তিকর কিছু হতে পারে। এই নিবন্ধে, আমরা C ++ মধ্যে ইনলাইন ফাংশন এবং ম্যাক্রো মধ্যে পার্থক্য সম্পর্কে আরও আলোচনা করা হবে

ইনলাইন

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

উদাহরণ:

ইনলাইন ইনপুট যোগফল (int x, int y)

{

ফিরে (x + y);

}

ম্যাক্রো

C ++ এ ম্যাক্রো একটি প্রোগ্রাম লাইনের পাঠ্য প্রতিস্থাপন বাস্তবায়ন। যে, ফাংশন সংজ্ঞায়িত পরিবর্তন অনুযায়ী টেক্সট প্রতিস্থাপন। একটি ফাংশন হিসাবে ইনলাইন মত, একটি ম্যাক্রো একটি ফাংশন ব্যবহার করে কোড manipulates। উদাহরণস্বরূপ:

# ডাবল (এক্স) এক্স এক্স * এক্স

int y = 5;

int j = ডাবল (++ y);

এখানে, আমরা মান 30 হিসাবে পাবেন! হিসাবে কলিং একটি ম্যাক্রো মাধ্যমে সম্পন্ন করা হয়েছে, "এক্স" + + y দ্বারা প্রতিস্থাপিত হয়েছে যা ++ y অন্য দ্বারা গুণিত করা + + y এটি মোট 5 * 6 করে 30 এর 6 নয়। ছয়টি মৌলিক হতে হবে কিন্তু একটি ভুল উত্তর।

এখন, ম্যাক্রো এখানে একটি বাগ সৃষ্টি করতে পারে। সুতরাং একটি ইনলাইন ফাংশন কম্পাইলারের মেমোরির মানগুলি অনুলিপি করে উদ্ধারের জন্য আসে এবং তারপর এটি কম্পাইল করে।

সংক্ষিপ্ত বিবরণ:

1 একটি ইনলাইন ফাংশন ফাংশন সংজ্ঞা একটি কপি তৈরি।

2। একটি ম্যাক্রো ফাংশন মধ্যে চিহ্নিত এবং সংজ্ঞায়িত হিসাবে টেক্সট প্রতিস্থাপিত।

3। একটি ইনলাইন ফাংশন প্রয়োগ করা হয় যখন একটি ম্যাক্রো প্রোগ্রামে একটি বাগ কারণ অনুমিত হয়।