कहते हैं कि तुम सरल टेम्पलेट कार्य हो ही ज फ़ाइल में प्रकार विशिष्ट विशेषज्ञता के साथ (सादगी के लिए नहीं वर्ग के सदस्य) की सुविधा देता है ...क्या कंपाइलर टेम्पलेट विशेषज्ञता के मामले में इनलाइन को अनदेखा करने की अनुमति है?
template <class TYPE>
void some_function(TYPE& val)
{
// some generic implementation
}
template <>
inline void some_function<int>(int& val)
{
// some int specific implementation
}
जब तक आप स्पष्ट रूप से आपके inline
विशेषज्ञता के लिए संकलक प्रत्यक्ष (inline
कीवर्ड) यदि आप .h फ़ाइल को एक से अधिक बार शामिल करते हैं तो आपको लिंकिंग त्रुटि मिल जाएगी (कम से कम मैं दृश्य सी ++ 2008 में करता हूं)।
हम सभी जानते हैं कि inline
संकलक के लिए सिर्फ एक सुझाव है, जो इसे अनदेखा कर सकता है। इस विशेष मामले में संकलक को इस सुझाव को अनदेखा करने और लिंकर को विफल होने की अनुमति है?
यह उन अंधेरे सी ++ कोनों में से एक है। –
इसे पढ़ें: http://stackoverflow.com/questions/1759300/c-when-should-i-write-the-keyword-inline-for-a-function-method/1759575#1759575 –