今回は、C++のクラスの例としてWindowsのDIB(デバイス独立ビットマップ)をクラス化してみます。今回クラス化するのは、DIBの作成と破棄、そして簡単な描画機能だけですが、このクラスを基に機能を拡張して行けばDIBを「オブジェクト」として簡単に扱うためのクラスも出来るでしょう。 DIBクラスの設計 今回作るクラスは、24ビットフルカラーDIBの初期化と解放、描画処理をクラス化したものです。クラスの設計としては、大きさやビットマップのアドレスといった属性とDIBを操作する関数を定義する事になるわけですが、オブジェクト指向プログラミングの「原則」通り属性の変数はprivateとして直接参照出来ないようにし、アクセスメソッドを用意します。 属性は、大きさ(幅と高さ)、ビットマップの先頭アドレス、それからDIBの操作の時に必要になるBITMAPINFO構造体といったものを定義しましょう。関数