मुझे हाल ही में इस तथ्य से काटा गया था कि ios_base::width
और/या setw
मैनिपुलेटर reset with every item written to the stream होना चाहिए। बल्कि इस सेsetw() के साथ क्या सौदा है?
while(whatever)
{
mystream << std::setw(2) << myval;
}
: ठीक
mystream.width(2);
while(whatever)
{
mystream << myval;
}
ठीक है,
है, तो आप इस करना चाहिए।
लेकिन क्या किसी को पता है कि यह डिज़ाइन निर्णय क्यों बनाया गया था? क्या कोई तर्क है कि मैं याद कर रहा हूं, या यह मानक के सिर्फ एक अंधेरे कोने है?
अन्य स्ट्रीम स्वरूपण संशोधक (जैसा कि लिंक किए गए SO प्रश्न में उल्लिखित है) 'चिपचिपा' हैं, जबकि setw
नहीं है।
भी देखें [कौन सा iomanip manipulators 'चिपचिपा' कर रहे हैं?] Http: // stackoverflow.com/q/1532640/2778484)। – chappjc