2016-01-01から1年間の記事一覧
関数型言語では関数が第一級の値という。私もよく分かっていないが、とりあえず何をするにも関数で、関数を操作するのだそうだ。その一つの例としてカリー化があげられ、ある関数に対して引数を一部与えて束縛し、その関数を返すというものである。C++で実装…
概要 固定長メモリプールを再び作った。 簡易unique_ptr, shared_ptrを自作し、速度の向上を図った。 普通にunique_ptr, shared_ptrを使用するよりも2~3倍の実行速度が得られた。 実装について 簡易shared_ptrであるSharedPtrを使用することを前提としたメ…
あるクラスのメンバ関数をコールバックとするにはいろいろな実装があると思いますが、例えばテンプレートを使うと次のようになります。ただし、あんまり美しくないですね……。std::functionalとstd::bindを使えばすぐに終わりますがちょっと速度が出ない問題…
本記事はhttps://twitter.com/staryoshi/status/669763731610431488のたくさんの反響を記念して蛇足的な解説を並べたものです。あまりC++に興味を持っていなかった人もこれを見て興味を持っていただけたら幸いです。もちろん、実際にはこれらの表記で困るこ…
クイックソートの非再帰版 クイックソートは通常、再帰を使って書かれます。再帰呼び出しはスタック領域を使ってしまいますので、呼び出しがあまりにも深くなるとスタックオーバーフローを出してしまいます。そのため、再帰呼び出しを使わないで書いてみまし…