2008-10-12から1日間の記事一覧

iteratorを引数にするジェネリック関数 iterator_traits

C++

例えば2つのイテレータを受け取って平均を返す関数を書こうとすると、イテレータが指し示す型の情報がないと作れませんね。 こんなときは iterator_traits というものを使って書くようです。 例えば平均値を求める関数を書いてみると、次のようになります。…

前置・後置のインクリメント、デクリメント/oprator++() operator--()

C++

Accelerated C++の中で変数をインクリメントする場合で、その値を使用しない場合はすべて前置のインクリメント演算子が使用されています。 for (int i = 0; i < 10; ++i) 僕自身はC言語を覚えてから標準では後置のものを使用していますが、どちらが多いので…

std::endl

C++

これまで、何となく気持ち悪いと思いつつ std::endl を使ってきました。 この気持ち悪さというのは「単に改行をしたい」という場合と「バッファフラッシュをしたい」場合は異なるということ。 std::endl の実装では、 // Microsoft Visual Studio 2005 い含…