امیر گوهرشادی

دانشجوی علوم کامپیوتر در IST Austria و Georgia Tech
چهارشنبه, ۱۴ آبان ۱۳۹۳، ۰۹:۴۹ ب.ظ

حواستان به stringstream باشد

همان‌طور که احتمالن می‌دانید در زبان دوست‌داشتنی ++C، همه‌چیز همیشه به شکلی که فکر می‌کنیم کار نمی‌کنند. این پست را می‌نویسم که توضیحی در مورد یکی از مواردی بدهم که در آن stringstream آن‌گونه که من فکر می‌کردم کار نمی‌کرد. منظورم به طور دقیق تابع clear است. اگر شما یک stringstream داشته باشید، می‌توانید  این آزمایش را انجام دهید:

stringstream sst;

sst<<"some data";

sst.clear();

به سادگی دیده می‌شود که استریم شما خالی نمی‌شود! در مورد این که چرا این‌گونه است سرچ کنید (موضوع لاگ در میان است). به نظرم راه درستش این است:

sst.str("");

sst.clear();

ولی به شخصه ترجیح می‌دهم هر بار از شر stringstream قدیمی خلاص شده و یک جدیدش را بسازم که به این چیزها فکر نکنم!



نوشته شده توسط (امیر کفشدار گوهرشادی)
ساخت وبلاگ در بلاگ بیان، رسانه متخصصان و اهل قلم

امیر گوهرشادی

دانشجوی علوم کامپیوتر در IST Austria و Georgia Tech

بایگانی

آخرین مطالب

۱۴ آبان ۹۳ ، ۲۱:۴۹

حواستان به stringstream باشد

همان‌طور که احتمالن می‌دانید در زبان دوست‌داشتنی ++C، همه‌چیز همیشه به شکلی که فکر می‌کنیم کار نمی‌کنند. این پست را می‌نویسم که توضیحی در مورد یکی از مواردی بدهم که در آن stringstream آن‌گونه که من فکر می‌کردم کار نمی‌کرد. منظورم به طور دقیق تابع clear است. اگر شما یک stringstream داشته باشید، می‌توانید  این آزمایش را انجام دهید:

stringstream sst;

sst<<"some data";

sst.clear();

به سادگی دیده می‌شود که استریم شما خالی نمی‌شود! در مورد این که چرا این‌گونه است سرچ کنید (موضوع لاگ در میان است). به نظرم راه درستش این است:

sst.str("");

sst.clear();

ولی به شخصه ترجیح می‌دهم هر بار از شر stringstream قدیمی خلاص شده و یک جدیدش را بسازم که به این چیزها فکر نکنم!

موافقین ۲ مخالفین ۰ ۹۳/۰۸/۱۴
امیر کفشدار گوهرشادی

نظرات  (۰)

هیچ نظری هنوز ثبت نشده است

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی