2012-10-01から1ヶ月間の記事一覧

shrink-to-fit の幻想

C++

C++03 には shrink-to-fit というイディオムがあります。 More C++ Idioms/縮めて合わせる(Shrink-to-fit) - Wikibooks std::vector<int> v; //... たくさんの push_back と、たくさんの v に対する削除 //その結果、v のサイズは小さいが、容量は大きい。 std::v</int>…

try-and-back-off アルゴリズム

C++

C++11 には、複数の Lockable なオブジェクトをロックしてくれる std::lock 関数があります。 template<class L1, class L2, class... L3> void lock(L1& m1, L2& m2, L3&... m3); この関数の最大の特徴は、決してデッドロックしないことです。 そして、このデッドロックしないという要件を満</class>…

TypeScript の仕様を眺めた

TypeScript - JavaScript that scales. MicrosoftがJavaScript系の新言語「TypeScript」を発表、C#の父が開発 | 日経 xTECH(クロステック) TypeScript、JavaScript とある程度互換性あるし、読みやすい JavaScript のコードに変換してくれるし、既に実験場…