व्यक्तिगत रूप से, मुझे यह बहुत दुर्लभ लगता है कि मैं एक ही स्ट्रिंग स्ट्रीम में और बाहर स्ट्रीमिंग करना चाहता हूं।
आमतौर पर मैं या तो एक स्ट्रिंग से एक धारा को इनिशियलाइज़ करना चाहता हूं और फिर उसे पार्स करता हूं; या स्ट्रिंग स्ट्रिंग पर चीजों को स्ट्रीम करें और फिर परिणाम निकालें और इसे स्टोर करें।
यदि आप एक ही स्ट्रीम से स्ट्रीम कर रहे हैं, तो आपको स्ट्रीम स्टेट और स्ट्रीम पोजिशन से बहुत सावधान रहना होगा।
'सिर्फ' istringstream
या ostringstream
बेहतर का उपयोग करना आपके इरादे को व्यक्त करता है और आपको कुछ गलतियों के खिलाफ जाँच देता है जैसे कि <<
बनाम का आकस्मिक उपयोग >>
।
वहाँ हो सकता है कुछ प्रदर्शन में सुधार हो सकता है लेकिन मुझे लगता है कि पहली बार में देख नहीं किया जाएगा।
आपके द्वारा लिखे गए कुछ भी गलत नहीं है। यदि आप पाते हैं कि यह पर्याप्त रूप से अच्छा प्रदर्शन नहीं करता है, तो आप अन्य दृष्टिकोणों को प्रोफाइल कर सकते हैं, अन्यथा स्पष्टता के साथ रहें। व्यक्तिगत रूप से, मैं सिर्फ इसके लिए जाऊंगा:
std::string stHehe( "Hello stackoverflow.com!" );