stl

std::tr1::unordered_map, __gnu_cxx::hash_map and std::map with Boehm GC on Mosh

hash_func と equal_to と allocator を指定する例がほとんど見あたらなかったのでここに残す。 Mosh では __gnu_cxx::hash_map が 10% ほど残り2つと比べて速かった。 #ifdef USE_GNU_CXX_HASH_MAP #include <tr1/unordered_map> #include <ext/hash_map> struct hash_func { size_t operato</ext/hash_map></tr1/unordered_map>…

iteratorの it++ と ++it

C++クックブックのアルゴリズムの章を読んでいたら、iteratorのループでは it++ ではなく ++itを使えと書いてあった。 it+だと一時オブジェクトが作られてしまうのだそうだ。 心当たりが数ヶ所合ったので grep して修正しておいた。 追記 自分が iterator を…

map面倒

findの戻り値がiteratorでかつ、pair が返るとか面倒。 うぅ。何でこんなに面倒なんだろうか。 insertのときもpairでやらなきゃいけないし。 みんなまじめに使っているんだろうか? wrapしてます?

uIP@スタバ

久しぶりにスタバで作業。 ネットワークAPIの実装をしているのにIP Unreachableな場所で作業するのがなんとも。 TcpClientのコードをほぼ書き上げる。 Effective STLを読みながら、試験的にSTLを使ってみています。 typedef std::vector Buffer; TcpClientの…

STL勉強中 - for_eachですべての要素に対してdelete

さてSTL勉強中なわけですが、コンテナのすべての要素に対して delete したいと思ってやってみましたがなかなかうまくいかず調べてみました。 http://www.devmaster.net/forums/showthread.php?t=418によると、 どこかのヘッダでこんなのを用意していて struc…