overload-resolution पर टैग किए गए जवाब

11
जब गैर-कॉन्स्टिट्यूशन निजी है, तो सार्वजनिक कॉन्स्ट विधि को क्यों नहीं कहा जाता है?
इस कोड पर विचार करें: struct A { void foo() const { std::cout << "const" << std::endl; } private: void foo() { std::cout << "non - const" << std::endl; } }; int main() { A a; a.foo(); } संकलक त्रुटि है: त्रुटि: 'शून्य ए :: फू ()' निजी है। लेकिन …

5
अगर यह अस्पष्टता में शामिल नहीं होगा, तो एक पद्धति को एक अस्पष्ट कॉल क्यों जोड़ा जाएगा
मेरी यह क्लास है public class Overloaded { public void ComplexOverloadResolution(params string[] something) { Console.WriteLine("Normal Winner"); } public void ComplexOverloadResolution<M>(M something) { Console.WriteLine("Confused"); } } अगर मैं इसे इस तरह कहता हूं: var blah = new Overloaded(); blah.ComplexOverloadResolution("Which wins?"); यह Normal Winnerकंसोल को लिखता है। लेकिन, अगर मैं एक और …

3
रूपांतरण ऑपरेटर का यह अधिभार क्यों चुना जाता है?
निम्नलिखित कोड पर विचार करें । struct any { template <typename T> operator T &&() const; template <typename T> operator T &() const; }; int main() { int a = any{}; } यहां दूसरा रूपांतरण ऑपरेटर को अधिभार संकल्प द्वारा चुना गया है। क्यों? जहां तक ​​मैं इसे समझता हूं, …

3
मैं C ++ को दूसरे टेम्प्लेट तर्क का अनुमान लगाने से कैसे रोक सकता हूं?
मैं एक C ++ लाइब्रेरी ( strf ) का उपयोग कर रहा हूं , जो कहीं न कहीं, इसके भीतर निम्नलिखित कोड है: namespace strf { template <typename ForwardIt> inline auto range(ForwardIt begin, ForwardIt end) { /* ... */ } template <typename Range, typename CharT> inline auto range(const Range& range, …

1
फ़ंक्शन तर्क के रूप में {} क्यों अस्पष्टता का कारण नहीं बनता है?
इस कोड पर विचार करें: #include <vector> #include <iostream> enum class A { X, Y }; struct Test { Test(const std::vector<double>&, const std::vector<int>& = {}, A = A::X) { std::cout << "vector overload" << std::endl; } Test(const std::vector<double>&, int, A = A::X) { std::cout << "int overload" << std::endl; } …
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.