क्या सी/सी ++ फंक्शन हेडर लिखने के लिए एक अच्छा तरीका है जो डिफ़ॉल्ट पैरामीटर के साथ है जो फ़ंक्शन कॉल हैं?फ़ंक्शन कॉल का परिणाम डिफ़ॉल्ट पैरामीटर मान के रूप में उपयोग किया जा सकता है?
int foo(int x, int y = 0);
मैं एक बड़ी कोड आधार जहां कई कार्यों इस फ़ंक्शन को कॉल करते हैं और इस डिफ़ॉल्ट मान पर निर्भर में काम कर रहा हूँ:
मैं समारोह के साथ कुछ शीर्ष लेख है। यह डिफ़ॉल्ट मान अब कुछ गतिशील करने के लिए बदलने की जरूरत है और मैं इसके लिए कोई तरीका रहा हूँ:
int foo(int x, int y = bar());
बार() जहां कुछ समारोह है कि कुछ सिस्टम मापदंडों के आधार पर डिफ़ॉल्ट मान उत्पन्न करता है।
int foo(int x, int y = baz.bar());
कहाँ baz एक समारोह एक उद्देश्य यह है कि शीर्ष लेख फ़ाइल के भीतर instantiated नहीं किया गया है से संबंधित है: वैकल्पिक रूप से इस समारोह प्रोटोटाइप कैसा दिखेगा।
AFAIK यह C++ नहीं सी (सी डिफ़ॉल्ट मानों का समर्थन नहीं करता) के लिए प्रासंगिक है। – Motti