methaneのブログ

このブログに乗せているサンプルコードはすべてNYSLです。

STLの設計者は偉い

5/29の、equal_range()の型縛りの件は、完全にうそでした。
comp(*it, val) と comp(val, *it) が両方通って、<と同じ性質(a<b かつ b<c なら a<c とか)を満たすようなcompを渡せば、普通にequal_range()つかえます。STLのアルゴリズムはちゃんと汎用的に作られていました。
参考:http://www.sgi.com/tech/stl/StrictWeakOrdering.html

Genericsは、型がtemplate化されているので、型が満たすべき要件についてしっかり調べて使わないと、こういった思い込みによる勘違いが発生してしまいますね。