क्यों आप इसगैर स्थिरांक lvalue संदर्भ
int a;
const double &m = a;
कर सकते हैं लेकिन जब आप इस
int a;
double &m = a;
कर आपको कोई त्रुटि मिलती?
error: non-const lvalue reference to type 'double' cannot bind to a value of unrelated type 'int'
संपादित करें:
अधिक विशिष्ट मैं कारण गैर स्थिरांक संदर्भ अस्थायी वस्तुओं को नहीं बांध सकता को समझने के लिए कोशिश कर रहा हूँ होने के लिए।
इस प्रश्न का दो तरीकों से व्याख्या किया जा सकता है: या तो आपको यह जानने की ज़रूरत है कि एक ऐसा नियम है जो अस्थायी मूल्यों के लिए बाध्यकारी संदर्भों को संदर्भित करता है, या आप तर्क के बारे में जानना चाहते हैं। आपको शायद दोनों प्रकार के उत्तर मिलेंगे, लेकिन आप उनमें से केवल एक में रुचि रखते हैं ... यह कौन है? – DanielKO
मैं तर्क जानना चाहता हूं। – Ares
यहां त्रुटि संदेश थोड़ा उलझन में है। मैं कुछ चीज की अपेक्षा करता हूं - 'त्रुटि: प्रकार' डबल 'प्रकार के रावल्यू से' डबल '' के गैर-कॉन्स्ट संदर्भ के अमान्य प्रारंभिकरण। – Mahesh