- सूची
end()
पिछले-एंड-एंड इटरेटर की प्रतिलिपि देता है, है ना? - इसलिए,
list.end()
एक रैवल्यू है, है ना? - - ऑपरेटर-फ़ंक्शन सूची पुनरावर्तक के लिए अतिभारित एक गैर-कॉन्स्ट संदर्भ लेता है, है ना?
- आप गैर-कॉन्स संदर्भों के लिए राइंड्स को बाध्य नहीं कर सकते हैं, है ना?
तो कैसे आक्यों --list.end() संकलित करता है?
std::list<int> lst;
// ...
--l.end();`
संकलित करता है?
जैसा कि सही ढंग से इंगित किया गया है, मेरा तीसरा बिंदु जरूरी नहीं है। लेकिन फिर इस कोड के बारे में कैसे संकलित करता है?
struct A{};
void f(A&)
{
}
A a()
{
return A();
}
int main()
{
f(a());
}
तीसरा बिंदु गलत है। – Nawaz
@banuj: मुझे –
समझ में नहीं आ रहा है मैं असहमत हूं कि आपका दूसरा उदाहरण संकलित करता है: http://ideone.com/V98wW3 –