タグ

2011年7月7日のブックマーク (1件)

  • 関数オブジェクト(後編)

    (このコンテンツはメールマガジンの STL & iostream 入門に手を加えたものです。「 STL と iostream が使えるかのチェック」等はメールマガジンの方のページをご覧ください) 関数オブジェクトが役立つのは、アルゴリズムを「クラスの配列」に使用する場合です。既存のクラスを使用する場合、アルゴリズムが使用する演算子を持っていないことがほとんどです。例えば次のようなクラス。 class CNoOperator { public: int m_i; }; このクラスは int 型のメンバ変数を持っていますが、この変数に = などで直接アクセスすることはできません。ピリオド( . )を使ってメンバとしてアクセスする必要があります。なので、このクラスの配列は == 演算子を使用する std::count() には使用できません。 こういう場合には関数オブジェクトが有効です。たとえば

    sokutou-metsu
    sokutou-metsu 2011/07/07
    STLの関数オブジェクト