मान लीजिए क्यों f(new int)
f(const T&)
बजाय f(const T*)
पर ले कर जाता है मैं एक समारोहगैर स्थिरांक सूचक स्थिरांक टी *
template <typename T>
void f(const T&) {
cout << "f(T&)" << endl;
}
template <typename T>
void f(const T*) {
cout << "f(T*)" << endl;
}
के दो भार के संबंध के लिए स्थिरांक टी एंड अधिभार पसंद? इस काउंटर-सहज व्यवहार के बारे में मानक वार्ता में कहीं भी?
'च (के अनुसार जीतता नया int) ''टी' सेट 'int *' के साथ' f (const t &) 'को 'int'' के साथ हल करता है, 'टी' सेट 'int' के साथ नहीं। ऐसा लगता है कि आप हस्ताक्षर के साथ एक समारोह बुला रहे हैं। 'एफ (int * const &);' –
मुझे यह हिस्सा पता था। मेरा सवाल है, 'एफ (int * const &)' f (const int *) 'से बेहतर मिलान क्यों है? –