STL : clearing stringstream
5 отговора
212 прегледа
STL : clearing stringstream
Реших, че е крайно време да скъсам с тоталитарното си C-минало и да видя какво предлага STL вместо sprintf. Оказа се, че нещото се казва stringstream. Изглежда добре, ама не можах да го изпразня по никакъв начин това чудо, за да го пълня наново. Намерих една дискусия по въпроса тук, ама пак не ми стана ясно. Някой знае ли как се прави това в края на краищата?
System Doctor Error:
Your girlfriend is pregnant.
(A)bort, (M)arry, (I)gnore?_
System Doctor Error:
Your girlfriend is pregnant.
(A)bort, (M)arry, (I)gnore?_
Re: STL : clearing stringstream
т.е. искам да кажа, че хич не съм сигурен дали правилният начин за почистване е нещо от рода на
ss.str("");
щото ми направи лошо впечатление, че адресът на низа се променя ( ss.str().c_str() ), въпреки че новото съдържание е по-късо от старото. Това ми намирисва на излишна преалокация и хич не ме кефи.
System Doctor Error:
Your girlfriend is pregnant.
(A)bort, (M)arry, (I)gnore?_
ss.str("");
щото ми направи лошо впечатление, че адресът на низа се променя ( ss.str().c_str() ), въпреки че новото съдържание е по-късо от старото. Това ми намирисва на излишна преалокация и хич не ме кефи.
System Doctor Error:
Your girlfriend is pregnant.
(A)bort, (M)arry, (I)gnore?_
Re: STL : clearing stringstream
ostringstream ostr;
ostr << "Test";
ostr.str(""); <--------------------------------------------
ostr << "Test";
ostr.str(""); <--------------------------------------------
Re: STL : clearing stringstream
Tova e nachinyt.
> и хич не ме кефи.
Mda, po-dobre si jiveehme pri bay Tosho :-)
> и хич не ме кефи.
Mda, po-dobre si jiveehme pri bay Tosho :-)
Re: STL : clearing stringstream
мда...този израз за тоталитарното минало много ме изкефи...
иначе и аз на няколко пъти съм си казвал - от днес почвам да използвам stream-овете от Standart C++, обаче така и не става...
въпреки че съм яко фен на ОО, и се опитвам да се пренасочвам и да си пиша нещата колкото е възможно по ОО-manner със C++, засега съм си направил извода, че файловия изход на ANSI C, а също и така конзолния, който е почти същия, е по-удобен и гъвкав от този на Standart C++ (освен това insertion и extraction операторите ми напомнят същите тези ужасни оператори при сериализацията в MFC-то...
)
най-често умните хора са и лоши
иначе и аз на няколко пъти съм си казвал - от днес почвам да използвам stream-овете от Standart C++, обаче така и не става...
въпреки че съм яко фен на ОО, и се опитвам да се пренасочвам и да си пиша нещата колкото е възможно по ОО-manner със C++, засега съм си направил извода, че файловия изход на ANSI C, а също и така конзолния, който е почти същия, е по-удобен и гъвкав от този на Standart C++ (освен това insertion и extraction операторите ми напомнят същите тези ужасни оператори при сериализацията в MFC-то...
най-често умните хора са и лоши
Re: STL : clearing stringstream
С това не съм се занимавал, но предполагам, че се извършва въпросната преалокация, за да се освободи този дълъг непрекъснат блок, при положение, че може същото да се вмести в друг, по-къс непрекъснат блок, което оптимизира работата с паметта.