« 2003年09月29日 | メイン | 2003年10月01日 »
2003年09月30日
書籍購入
啓文堂@府中店にて。
【NOVEL】 涼宮ハルヒの溜息/谷川流/角川スニーカー文庫
【NOVEL】 9S<ナインエス>/葉山透/電撃文庫
stringstream
stringstreamの扱いではまってしまった。
std::stringstream stream;
stream << "foo";
std::cout << stream.str() << std::endl;
stream << "bar";
std::cout << stream.str() << std::endl;
といった感じでstringstreamをsprintfの代わりに使い回そうって考えた。上のコードだと当然ながら2回目の出力時に"foobar"と出てしまうので、出力前にstringstreamをクリアする必要が出てくる。ところが、リファレンスを見てもそれっぽいメンバが見あたらない。clear()は意味が違うし、seekp(0)でポインタ移動させてもデータが消える訳じゃない(当たり前)。
stringstreamでぐぐって調べたみたところ、Experts Exchangeで俺と同じ質問している人を発見。どうやら、str(std::string(""))でいいらしい。うまくいくんだけど、ちょっぴり不満。std::stringみたいにerase()とかあってもいいのに。
寝坊
久々にやってしまった。。。気持ちよーく寝てて、ふとした拍子に目が覚めた。やっぱり目覚ましでなく、自然に目が覚めると気持ちいいね。などと思いつつ時計を見ると、10時8分……どうやっても間に合わねぇ。
慌てて上司に連絡を入れて、午前半休とさせてもらうことにした。何てこったい。