सी ++ में किसी वर्ग की विधि से वस्तुओं का संग्रह वापस करने के कई तरीके हैं।संग्रह लौटने पर ट्रेडऑफ
उदाहरण के लिए, क्लास MessageSpy पर विचार करें जो किसी कनेक्शन पर भेजे गए सभी संदेशों पर सुनता है। एक ग्राहक मैसेजिंग जानकारी को कई तरीकों से एक्सेस कर सकता है।
- स्थिरांक CollectionClass MessageSpy :: getMessages()
- इटरेटर MessageSpy :: शुरू(), इटरेटर MessageSpy :: अंत()
- शून्य MessageSpy :: getMessages (OutputIterator)
- शून्य MessageSpy :: eachMessage (functor)
- दूसरों ...
प्रत्येक दृष्टिकोण अपने व्यापार गत है। उदाहरण के लिए: दृष्टिकोण 1 को पूरे संग्रह की प्रतिलिपि बनाने की आवश्यकता होगी जो बड़े संग्रहों के लिए महंगा है। जबकि दृष्टिकोण 2 कक्षा को एक संग्रह की तरह दिखता है जो दृश्य के लिए अनुचित है ...
चूंकि मैं हमेशा सबसे उपयुक्त दृष्टिकोण चुनने का प्रयास कर रहा हूं, मुझे आश्चर्य है कि आप इन दृष्टिकोणों पर विचार करते समय व्यापार-बंद/लागत पर क्या विचार करते हैं ?
यिक्स, इस प्रश्न की टिप्पणियां गायब हो गईं! "अनिवार्य पेपर" के लिंक के साथ एक टिप्पणी थी। क्या कोई भी लिंक फिर से पोस्ट कर सकता है? धन्यवाद! –
@ क्रिस्टियनअमेर I _think_ यह [यह एक] था (http://c2.com/cgi/wiki?PrematureOptimization)। हालांकि, इंटरवब्स के चारों ओर तैरते हुए एक ही विषय वस्तु के आस-पास कई "मौलिक टुकड़े" हैं। QT डेटा साझाकरण के साथ linq के लिए – sehe