2013-01-21から1日間の記事一覧

クラスメモPart3-3

Mapのstructをclassに替えたもの。 Array2D<Object> mStageData; の配列がsetSizeで動的に生成されるが、この時もコンストラクタは呼ばれている。Objectクラスのコンストラクタは mFlagを0に初期化するようにしたので、邪魔くさいZeroClearは呼び出す必要がなくなっ</object>…

クラスメモPart3-2

//Map.cpp #include "Map.h" #include "File.h" #include "GameLib/Framework.h" //coutも using namespace GameLib; namespace { //Mapコンストラクタ用 unsigned GetMapSize(const char* stageData) { int x=0; int y=0; int tmp =0; for(int i=0; stageDa…

クラスメモPart5

Mapを作る経過ではまったことをメモ。 まず、.txtをbinaryモードで読み込むと、 \r\nが残る。 これは、char型の \r : 10 \n : 13 にあたる。 あとは、Mapではrow,colではわかりにくいので、x,yとか、height,widthであらわすが、その時、 二次元配列上の”たて…

クラスメモPart3-1

今回はRPG風のゲームを簡単ながら作りたいかな、と考えているので、次はMapで。 とりあえず、典型的なやつを一回作りたいので、行き当たりばったりでやってみる。マップを作るので、マップチップの性質を列挙型に定義する。 #include "Array2D.h" //宣言だけ…

クラスメモPart2

本に沿って、Fileクラスも自分で作る。 //File.h class File { public: File(const char* filename); ~File(); int getSize() const; //constメンバ関数はなるべくつける。 unsigned getUnsigned() const; const char* getData() const; private: int mSize;…

クラスメモPart1-2

Part1をテンプレートで書いてみる。 #ifndef INCLUDED_ARRAY2D_H__ #define INCLUDED_ARRAY2D_H__ template <typename TYPE> class Array2D { public: Array2D(int i,int j); ~Array2D(); void Show(); //表示させる関数 TYPE& operator()(int i, int j); //参照つけないと</typename>…