সি ++ এ "ফ্রি ফাংশন" শব্দের অর্থ কী?


97

উত্সাহ :: পরীক্ষার জন্য ডকুমেন্টেশন পড়ার সময়, আমি "ফ্রি ফাংশন" শব্দটি পেলাম। আমি যা বুঝতে পারি তা হ'ল একটি ফ্রি ফাংশন এমন কোনও ফাংশন যা কোনও কিছুই ফেরায় না (এর রিটার্নের ধরণটি বাতিল হয়) তবে আরও পড়ার পরে মনে হয় যে ফ্রি ফাংশনগুলি কোনও যুক্তিই নেয় না। কিন্তু আমি নিশ্চিত না. এই সব আমার অনুমান। সুতরাং কেউ বিনামূল্যে ফাংশন সংজ্ঞায়িত করতে পারে?

উত্তর:


117

মেয়াদ বিনামূল্যে ফাংশন C ++ কেবল অ সদস্য ফাংশন বোঝায়। সদস্য ফাংশন নয় এমন প্রতিটি ফাংশন একটি ফাংশন।

struct X {
    void f() {}               // not a free function
};
void g() {}                   // free function
int h(int, int) { return 1; } // also a free function

ধরা যাক আমাদের একটি আলাদা ফাইলে আমাদের মূল ফাংশন রয়েছে এবং এর ভিতরে আমাদের একটি ফ্রি ফাংশন কল করা দরকার, তাই অন্য কোনও ফাইলে ফ্রি ফাংশন রাখতে আমার কী করা উচিত যা আমি পরে এটি আমার মূল ফাইলটিতে অন্তর্ভুক্ত করব ?? মানে আমার এমন কোনও এইচপিপি ফাইল তৈরি করা উচিত যেখানে আমার নিখরচায় ফাংশনটি এখানে প্রয়োগ করা হবে (স্ট্যাটিক ইনলাইন ফাংশন হিসাবে সম্ভবত)?
জয়

4
সাধারণত আপনি এগুলি একটি শিরোনাম ফাইলে তাদের ঘোষণা করে আলাদা আলাদা উত্স ফাইলে (টেম্পলেট ফাংশনগুলির মতো কিছু ব্যতিক্রম সহ) এগুলি প্রয়োগ করবেন। সেই নির্দিষ্ট বিষয়ে একটি নতুন প্রশ্ন খোলাই ভাল হবে যদিও লোকেরা আপনাকে আরও বিশদ সহ উত্তর দিতে পারে ইত্যাদি
জর্জিট ফ্রিটস্কে
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.