タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

*programmingとiteratorに関するkiririmodeのブックマーク (2)

  • zip の解凍 - Cube Lilac

    zip の解凍クラスが必要になったので作成.C/C++zip を扱う場合,zlib のサンプルコードの 1 つである minizip を使うのが一番楽そうなので,このライブラリを利用したラッパクラスを作成することを考えます. zip は,複数のファイル/ディレクトリをひとまとめにしてアーカイブ化できる機能があるので,この複数のファイルへの操作方法が問題となってきます.試行錯誤した結果,zip アーカイブ内の各要素(ファイル/ディレクトリ)を順に走査できるような iterator を用意して,通常はこの iterator を通して各ファイルにアクセスするような実装としました. サンプルプログラムは以下のようになります.unzip オブジェクトを生成した後は,begin() や find() メソッドを用いて zip アーカイブ内の処理を行いたいファイルへアクセスします.これらのメソッド

    zip の解凍 - Cube Lilac
    kiririmode
    kiririmode 2009/06/02
    ソースがキレいすぎる!!!
  • 『イテレータを自作するには?』

    C++ フリーでぷろぐらみんぐ 逆引きリファレンス。 C++のやりたい事から引ける逆引きメモを書いています。 何かコメントなどいただけると嬉しいです! C++では、STLを使用すると特にイテレータが大活躍ですね(^^) 自分でイテレータを作成する必要にせまられることはないかと思います。 でも、独自のイテレータを作成するにはどうしたらよいかは興味深いと思います。 さて、ここでは、char*のイテレータを作成しようと思います。 あまり意味の無い試みです。 なぜなら、アルゴリズムの、copyやreverseなど様々な関数テンプレートはおそらくchar*の型をそのまま扱えるからです。 ま。遊びなので 【サンプル】 #include <cstdlib> #include <iostream> #include <iterator> #include <algorithm> #include <sst

  • 1